function validateForm(){
	var isOk = true;

	if (typeof(mandatoryFields)=="object" && mandatoryFields["frm"]){
		mandatoryFieldsAr = mandatoryFields["frm"].split(",");
		mandatoryAlertsAr = mandatoryAlerts["frm"].split(",");
		// first element is always "0"
		for (var i=1;i<mandatoryFieldsAr.length; i++){
			o = document.getElementById(mandatoryFieldsAr[i]);
			curType = o.type;
			if (curType=="text"){
			//if (o.length==undefined && o.value!=undefined){
				if (o.value.length==0){
					unfoldForm();
					if (mandatoryAlertsAr[i]==""){
						alert ("The field was not filled correctly");
					}else{
						if (i<mandatoryAlertsAr.length){
							alert (mandatoryAlertsAr[i]);
						}else{
							alert ("The field was not filled correctly");
						}
					}

					isOk = false;
					o.focus();
					break;

				}else if (mandatoryFieldsAr[i]=="email"){
					if (validateEmail(o.value)==false){
						unfoldForm();
						if (mandatoryAlertsAr[i]==""){
							alert ("The field was not filled correctly");
						}else{
							alert (mandatoryAlertsAr[i]);
						}
						o.focus();

						isOk = false;
						break;
					}
				}
			}else if (curType=="select-one"){
			//}else if(o.length && o.selectedIndex ){

				if (o.selectedIndex==0 && o[0].value.toLowerCase().indexOf("choose")==0){
					unfoldForm();
					if (mandatoryAlertsAr[i]==""){
						alert ("The field was not filled correctly");
					}else{
						alert (mandatoryAlertsAr[i]);
					}
					o.focus();
					isOk = false;
					break;

				}
			}
		}

	}
	return isOk;
}



function fillForm (){
	var e ;
	e = document.getElementById("rememberDetails");
	if (e)e.checked=true ;

	if (formValues){
		// last cell is always 0
		for (var i=0; i<formValues.length-1; i++){
			e = document.getElementById (formValues[i][0]);
			if (e){
				type = e.type;

				if (type && type=="text" ){
					e.value = formValues[i][1];
				}else if (type=="select-one") {
					for (j=0; j<e.length; j++){
						if (e[j].value == formValues[i][1] ){
							e.selectedIndex = j;
							break;
						}
					}
				}

			}
		}
		isAllFilled = true;
		if (typeof(mandatoryFields)!="undefined"){
			mandatoryArr = mandatoryFields['frm'].split(",");
			for (var i;i<mandatoryArr.length; i++){
				if (mandatoryArr[i].length>1){
					e = document.getElementById (mandatoryArr[i]);
					if (e && e.value && e.value==""){
						isAllFilled = false;
						break;
					}
				}
			}

			if (isAllFilled && formValues.length>1 && document.getElementById("frmUse") ){
				document.getElementById("pagefrm").className = "form folded" ;
				if (document.getElementById("frmRemember"))document.getElementById("frmRemember").style.display = "none";
				if (document.getElementById("frmUse"))document.getElementById("frmUse").style.display = "inline";
			}
		}

	}
}

function unfoldForm(){
	if(document.getElementById("pagefrm"))document.getElementById("pagefrm").className = "form" ;
	if(document.getElementById("frmRemember"))document.getElementById("frmRemember").style.display = "inline";
	if(document.getElementById("frmUse"))document.getElementById("frmUse").style.display = "none";
}


function respondToForm(strResponse){
	setHtml ('pagefrm','<div class="formResponse" >' + strResponse + '</div>');
}


function validateEmail(val){
	var rule = /^[a-z][\w\-\.]*@([a-z0-9\-]+\.)+[a-z]{2,}$/i;
	return rule.test (val);
}
