function checkOnSubmit(gen_feedback) {

	if (gen_feedback.f_fname.value == "") {
	alert("You must enter your first name to continue.");
	gen_feedback.f_fname.focus();
	return false;
	}
		
		if (document.gen_feedback.f_fname.value.length < 2) {
	alert("Your first name needs to have at least 2 letters.");
	gen_feedback.f_fname.focus();
	return false;
	}
	
	if (gen_feedback.f_lname.value == "") {
	alert("You must enter your last name to continue.");
	gen_feedback.f_lname.focus();
	return false;
	}
	
			if (document.gen_feedback.f_lname.value.length < 2) {
	alert("Your last name needs to have at least 2 letters.");
	gen_feedback.f_lname.focus();
	return false;
	}	
	
	if (gen_feedback.f_city.value == "") {
	alert("You must enter your city to continue.");
	gen_feedback.f_city.focus();
	return false;
	}
	
			if (document.gen_feedback.f_city.value.length < 2) {
	alert("The city needs to have at least 2 letters.");
	gen_feedback.f_city.focus();
	return false;
	}
	
	if (gen_feedback.f_state.value == 0) {
	alert("You must enter your state to continue.");
	gen_feedback.f_state.focus();
	return false;
	}
	
	if (gen_feedback.f_zip.value == "") {
	alert("You must enter your zip code to continue.");
	gen_feedback.f_zip.focus();
	return false;
	}
	
		if (document.gen_feedback.f_zip.value.length < 5) {
	alert("The zip code needs to have at least 5 numbers.");
	gen_feedback.f_zip.focus();
	return false;
	}

		if (document.gen_feedback.f_zip.value.length > 6 && document.gen_feedback.f_zip.value.length < 10) {
	alert("The zip code should be a 5 number zip, or 5 number zip + 4.");
	gen_feedback.f_zip.focus();
	return false;
	
		// If length is exactly 5 numbers for zip plus dash, trim the length to 5, so no dash with it
			if (document.gen_feedback.f_zip.value.length == 6)
			{
				str1= document.gen_feedback.f_zip.value;
				str2 = str1.slice(0, 5);
				document.gen_feedback.f_zip.value = str2;
			}
	
	}
	
	if (gen_feedback.f_phone.value == "") {
	alert("You must enter your phone number to continue.");
	gen_feedback.f_phone.focus();
	return false;
	}
	
				if (document.gen_feedback.f_phone.value.length < 12) {
	alert("You must enter a valid phone number to continue.");
	gen_feedback.f_phone.focus();
	return false;
	}
	
		// validate email string to have the @, plus the period
	var TestVar = gen_feedback.f_email.value;
		
		if (TestVar == "") {
	alert("You must enter your email to continue.");
	gen_feedback.f_email.focus();
	return false;
	}
	
	var pattern = /^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)+/;
	var flag = pattern.test(TestVar);
	
	if(!flag)
	{
	alert ("Please enter a valid email address");
	return false;
	}
	
	if (gen_feedback.f_comments.value == "") {
	alert("You must enter some feedback to continue.");
	gen_feedback.f_comments.focus();
	return false;
	}
	
return true;
	
}