// FORM VALIDATION// Adriano Santi (contact@adrianosanti.com), September 2005function validateForm(formObj) { var formElements = formObj.elements;var canSubmit = true; var emailValid = true; var fieldsComplete = true; var anyChecked = true; var rcBoxes = new Array();rcBoxes[0] = new Array();rcBoxes[1] = new Array();var rcArrays = new Array();rcArrays[0] = new Array;rcArrays[1] = new Array;for (i=0;i<formElements.length;i++) {	if (formElements[i].type == 'text' ||  formElements[i].type == 'textarea') {		if (formElements[i].name.substring((formElements[i].name.length -4),(formElements[i].name.length)) == '_req' && (formElements[i].value == '' || formElements[i].value == 'undefined')) {		formElements[i].style.backgroundColor = '#fff'; 		fieldsComplete = false;			}		if (formElements[i].name == 'Femail_req') {			if (formElements[i].value.search('.+@.+\\.[a-z]+') == -1) {				formElements[i].style.backgroundColor = '#fff'; 				emailValid = false;				}			else { 				formElements[i].style.backgroundColor = '#ebebeb';				}			}		else if (formElements[i].name.substring((formElements[i].name.length -4),(formElements[i].name.length)) == '_req' && formElements[i].value != '') {			formElements[i].style.backgroundColor = '#ebebeb';			}		}	else if (formElements[i].type == 'radio' || formElements[i].type == 'checkbox') {		if (formElements[i].name.substring((formElements[i].name.length -4),(formElements[i].name.length)) == '_req') {			rcBoxes[0].push(formElements[i].name);			rcBoxes[1].push(formElements[i].checked);			}		}	}if (rcBoxes[0].length > 0) {	for (i=0;i<rcBoxes[0].length;i++) {		targetCheck = formObj[rcBoxes[0][i]];		i += targetCheck.length;		for (j=0;j<targetCheck.length;j++) {			if (targetCheck[j].checked) {				rcArrays[1].push(true);				rcArrays[0].push(targetCheck[j].name);				break;				}			else if (j == (targetCheck.length -1)) {				rcArrays[0].push(targetCheck[j].name);				}			}		}	if (rcArrays[0].length != rcArrays[1].length) {		anyChecked = false;		}	}if (!fieldsComplete || !anyChecked) {	// This message will display if a required textfield was left blank or a checkbox was left un-checked.	alert('Please fill out all fields before submitting.');		canSubmit = false; // Don't let the form submit.	//openAlert("Please fill out all * Required fields before submitting.");	}else if (!emailValid) {	// This message will display if the user didn't enter a valid email address.	alert('You did not enter a valid email address in the highlighted field.');		canSubmit = false; // Don't let the form submit.	//openAlert("You did not enter a valid email address in the highlighted field.");	}if (fieldsComplete && emailValid && anyChecked) {	// If everything has been properly filled and a valid email address has been entered, the form can submit!	document.getElementById('submit').style.display='none';	canSubmit = true;	}return canSubmit;}
