function validate(){
	var error_flag = true;
	var error_message = "Errors were detected in your input. Please correct the errors and resubmit.\n\n";
	
	for(i=0; i<document.form1.elements.length; i++){
		if(document.form1.elements[i].name != "Submit"){
			document.form1.elements[i].style.backgroundColor='#ffffff';			
		}
	}
	
	
	if (isEmpty(document.form1.elements['First Name'].value))
		setValidationError(document.form1.elements['First Name']);
		error_message += "-Please enter your first name.\n";

	if (isEmpty(document.form1.elements['Last Name'].value))
		setValidationError(document.form1.elements['Last Name']);
		error_message += "-Please enter your last name.\n";
	
	if (isEmpty(document.form1.elements['Address'].value))
		setValidationError(document.form1.elements['Address']);
		error_message += "-Please enter your address.\n";
	
	if (isEmpty(document.form1.elements['City'].value))
		setValidationError(document.form1.elements['City']);
		error_message += "-Please enter your city.\n";

	if (isEmpty(document.form1.elements['State'].value))
		setValidationError(document.form1.elements['State']);
		error_message += "-Please enter your state.\n";
	
	if (isEmpty(document.form1.elements['Zip'].value))
		setValidationError(document.form1.elements['Zip']);
		error_message += "-Please enter your zip.\n";

	if (!isValidEmail(document.form1.elements['Email Address'].value))
		setValidationError(document.form1.elements['Email Address']);
		error_message += "-Please enter your email address.\n";
	
	if(!error_flag){
		return true;
	} else {
		alert(error_message);
		return false;
	}
}


function isValidEmail(s){   
	if (isEmpty(s)) return false;
	if (isWhitespace(s)) return false;

	var i = 1;
	var sLength = s.length;

	while ((i < sLength) && (s.charAt(i) != "@")) { 
		i++
	}

	if ((i >= sLength) || (s.charAt(i) != "@")) return false;
	else i += 2;

	while ((i < sLength) && (s.charAt(i) != ".")) {
		i++
	}

	if ((i >= sLength - 1) || (s.charAt(i) != ".")) return false;
	else return true;
}

function isEmpty(s){   
	return ((s == null) || (s.length == 0))
}

function isWhitespace(s){   
	var i;

	if (isEmpty(s)) return true;

	for (i = 0; i < s.length; i++){   
		var c = s.charAt(i);
		if (whitespace.indexOf(c) == -1) return false;
	}

	return true;
}

function setValidationError(element){
	element.style.backgroundColor='#ffcccc';
	error_flag = true;
}