// Form Validation
function validate()
{
    var name     = document.request.fname;
    var email    = document.request.email;
	var company  = document.request.company;
	var schedule = document.request.schedule;
	var phone    = document.request.phone;
	
    if (name.value == "")
    {
        window.alert("Please enter your name.");
        name.focus();
        return false;
    }
	if (email.value == "")
    {
        window.alert("Please enter a valid e-mail address.");
        email.focus();
        return false;
    }
    if (email.value.indexOf("@", 0) < 0)
    {
        window.alert("Please enter a valid e-mail address.");
        email.focus();
        return false;
    }
    if (email.value.indexOf(".", 0) < 0)
    {   window.alert("Please enter a valid e-mail address.");
        email.focus();
        return false;
    }
	if (company.value == "")
    {
        window.alert("Please enter your company name.");
        company.focus();
        return false;
    }
	if (schedule.checked)
    {
		if (phone.value == "")
		{
			window.alert("Please enter a phone number.");
			phone.focus();
			return false;
		}
		else
		{
			if(validatePhone(phone, '0') == false)
			{
				phone.focus();
				return false;
			}
		}
	}
}


function validatePhone(phoneField, format) {
   var num = phoneField.value.replace(/[^\d]/g,'');
   
   if(num.length != 10) 
   {
		//Alert the user that the phone number entered was invalid.
		alert('Please enter a valid phone number including area code'); 
		return false;
 	} 
	else 
	{
		 //Email was valid.  If format type is set, format the Phone to the desired style.
	     switch(format) 
		 {
	     	case '0': //Format (xxx)-xxx-xxxx
				phoneField.value = "(" + num.substring(0,3) + ")-" + 
				num.substring(3, 6) + "-" + num.substring(6);
				return true;
				break;
			case '1': //Format xxx-xxx-xxxx
				phoneField.value = num.substring(0,3) + "-" + 
				num.substring(3, 6) + "-" + num.substring(6);
				return true;
				break;
			default: //Format xxxxxxxxxx
				phoneField.value = num;
				return true;
				break;
		}
	}

}