function validateForm (f) {
					//validate for blank entries
					if (trim(f.First_Name.value) == "") {
						alert("Please enter your first name.");
						f.First_Name.focus();
						return false;
					} else if (trim(f.Last_Name.value) == "") {
						alert("Please enter your last name.");
						f.Last_Name.focus();
					return false;
					
					} else if (trim(f.Company.value) == "") {
						alert("Please enter your company name.");
						f.Company.focus();
					return false;
					//validate an email address
					} else if (!checkRegex(f.Email_Address.value, /^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([a-zA-Z]{2,3})|(aero|coop|info|museum|name))$/)) { //e-mail checking regex
						alert("Please enter a valid e-mail address.");
						f.Email_Address.focus();
						return false;	
					//uses the isNumber function to validate a number (xx.xx) format

					} else if (trim(f.City.value) == "") {
						alert("Please enter your city name.");
						f.City.focus();
					return false;
					
					} else if (trim(f.State.value) == "") {
						alert("Please select your state.");
						f.State.focus();
					return false;
					//uses the function to validate phone numbers
					} else if (!CheckPhoneNumber(f.Phone.value)) {
						alert("Use (555) 555-5555 phone number format.");
						f.Phone.focus();
						return false;
					}
						//all validation passed, so return true.
						//alert("Thank you. A confirmation email will be sent shortly.");
						return true;
					
				}
				
				function doValidate() {
					//if the validation passes, submit the form.
					if (validateForm(document.proposalForm)) document.proposalForm.submit();
					//if (validateForm(document.proposalForm)) document.proposalForm.submit();
					//if (validateForm(document.proposalForm)) window.location.href = "?x=1";
				}
				
				//used to the validating email address regEx
				function checkRegex(object_value, regex) {
					return regex.test(object_value);
				}
				
				//regEx for validating currency (WITH NO COMMAS)
				/*function isNumber(str) {
					isPrice = /^\d+\.\d{2}$/;
					return isPrice.test(str);
				}*/
				
				//function to validate phone numbers
				function CheckPhoneNumber(TheNumber) {
					var valid = 1;
					var GoodChars = "0123456789()-+. ";
					var i = 0;
					if (TheNumber=="") {
						// Return false if number is empty
						return false;
					}
					for (i =0; i <= TheNumber.length -1; i++) {
						if (GoodChars.indexOf(TheNumber.charAt(i)) == -1) {
						// Note: Remove the comments from the following line to see this
						// for loop in action.
						// alert(TheNumber.charAt(i) + " is no good.")
						return false;
						} // End if statement
					} // End for loop
					return true;
				}
				
				//function to validate postal codes
				function CheckZipCode(TheNumber) {
					var valid = 1;
					var GoodChars = "0123456789-";
					var i = 0;
					if (TheNumber=="") {
					// Return false if number is empty
					return false;
					} else if (TheNumber.length < 5) {
					return false;		
					}
					for (i =0; i <= TheNumber.length -1; i++) {
					if (GoodChars.indexOf(TheNumber.charAt(i)) == -1) {
					// Note: Remove the comments from the following line to see this
					// for loop in action.
					 alert(TheNumber.charAt(i) + " is no good.")
					return false;
					} // End if statement
						} // End for loop
					return true;
				}
				
				function trim(value) {
				   var temp = value;
				   var obj = /^(\s*)([\W\w]*)(\b\s*$)/;
				   if (obj.test(temp)) { temp = temp.replace(obj, '$2'); }
				   var obj = / +/g;
				   temp = temp.replace(obj, " ");
				   if (temp == " ") { temp = ""; }
				   return temp;
}
