function Validator(contact)
{
var error = "";
	if (contact.fname.value == "")
	{
	error += "Your First Name is required. \n";
	}
	if (contact.lname.value == "")
	{
	error += "Your Last Name is required. \n";
	}
	if (contact.street1.value == "")
	{
	error += "Address is required. \n";
	}
	if (contact.city.value == "")
	{
	error += "City is required. \n";
	}
	if (contact.zip.value == "")
	{
	error += "Zip Code is required. \n";
	}
	if (contact.phone.value == "")
	{
	error += "Phone Number is required. \n";
	}
	if (contact.time.value == "")
	{
	error += "Please provide the best time to call. \n";
	}

//	if (!empty(contact.email.value)
//	{
		function chkemail()
		{
		var emailstring = contact.email.value;
		var ampIndex = emailstring.indexOf("@");
		var afterAmp = emailstring.substring((ampIndex + 1), emailstring.length);
		// find a dot in the portion of the string after the ampersand only
		var dotIndex = afterAmp.indexOf(".");
		// determine dot position in entire string (not just after amp portion)
		dotIndex = dotIndex + ampIndex + 1;
		// afterAmp will be portion of string from ampersand to dot
		afterAmp = emailstring.substring((ampIndex + 1), dotIndex);
		// afterDot will be portion of string from dot to end of string
		var afterDot = emailstring.substring((dotIndex + 1), emailstring.length);
		var beforeAmp = emailstring.substring(0,(ampIndex));
		//old regex did not allow subdomains and dots in names
		//var email_regex = /^[\w\d\!\#\$\%\&\'\*\+\-\/\=\?\^\_\`\{\|\}\~]+(\.[\w\d\!\#\$\%\&\'\*\+\-\/\=\?\^\_\`\{\|\}\~])*\@(((\w+[\w\d\-]*[\w\d]\.)+(\w+[\w\d\-]*[\w\d]))|((\d{1,3}\.){3}\d{1,3}))$/;
		var email_regex = /^\w(?:\w|-|\.(?!\.|@))*@\w(?:\w|-|\.(?!\.))*\.\w{2,3}/ 
		// index of -1 means "not found"
			if ((emailstring.indexOf("@") != "-1") &&
			(emailstring.length > 5) &&
			(afterAmp.length > 0) &&
			(beforeAmp.length > 1) &&
			(afterDot.length > 1) &&
			(email_regex.test(emailstring)) ) {
			return true;
			}
			else
			{
			return false;
			}
		}	
	chkemail();
	if (!chkemail())
	{
	error += "Please verify that your email address is correct. \n";
	}
//	}
	if (error != "")
	{
	alert(error);
	return (false);
	} else {
	return (true);
	}
}
