// JavaScript Document

// Validate phone numbers to xxx-xxx-xxxx
// parameters:
//		element (ex: this, document.web_order.previous_owner_home_phone)
//		errormsg (message to display if the phone number is invalid)
// note: pass an empty string through errormsg to disable the popup alert
function validatePhone(element, errormsg)
{
	with (element)
	{
		var regexp = /^\d{3}\-\d{3}\-\d{4}$/;
		if(value.search(regexp)==-1 && value != '')
		{
			if (errormsg != '') {
				alert(errormsg);
				setTimeout(function(){focus()}, 10); // firefox requires a little time before setting focus
			}
			return false;
		}
		else
			return true;
	}
}

function validateEmail(element,errormsg)
{
	with (element)
	{
		var regexp = /^([_a-zA-Z0-9-]+)(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+)(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,4})$/;
		if(value.search(regexp)==-1 && value != '')
		{
			if (errormsg != '') {
				alert(errormsg);
				setTimeout(function(){focus()}, 10); // firefox requires a little time before setting focus
			}
			return false;
		}
		else
			return true;
	}
}

function validateForm()
{
	//check for required fields
	errormsg_section1 = "The following required fields were left blank: \n";
	fields_section1 = '';
	if (document.contactform.name.value == '')
		fields_section1 += "Name\n";
	if (document.contactform.email.value == '')
		fields_section1 += "Email Address\n";
	if (document.contactform.phone.value == '')
		fields_section1 += "Phone Number\n";
	if (document.contactform.notes.value == '')
		fields_section1 += "Notes\n";
		
	//check for valid phone numbers
	fields_phone_numbers = '';
	if (validatePhone(document.contactform.phone,'') == false)
		fields_phone_numbers += "Please enter the Phone Number in the format xxx-xxx-xxxx\n";
		
	//check for valid email address
	fields_email_addresses = '';
	if (validateEmail(document.contactform.email,'') == false)
		fields_email_addresses += "Please enter a valid email address (Example: user@somedomain.com)\n";

	final_errormsg = '';
	if (fields_section1 != '')
		final_errormsg += errormsg_section1 + fields_section1 + "\n";
	if (fields_phone_numbers != '')
		final_errormsg += fields_phone_numbers + "\n";
	if (fields_email_addresses != '')
		final_errormsg += fields_email_addresses + "\n";

	if (final_errormsg != '')
	{			
		alert(final_errormsg);
		return false;
	}
	else
	{
		return true;
	}
}
