function isEmail(e) { 
 if (e.search(/^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[A-Za-z0-9]+((\.|-)[A-Za-z­0-9]+)*\.[A-Za-z 0-9]+$/) != -1) 
	{ 
		return true; 
	} 
else 
	{ 
	return false; 
	} 
 } 
 
 
function isPhone(phoneStr) {
	var phonePat;
	var phoneStrTmp;		
	var matchArray;
	var matchMax = 0;
	var matchCounter = 0;	
	// US
	matchMax += 1;
	phonePat = /^1?-?\(?(\d{3})\)?-([a-zA-Z0-9]{3})-([a-zA-Z0-9]{4})$/;
	matchArray = phoneStr.match(phonePat);
	if (matchArray == null) {
		matchCounter += 1;
	}
	if (matchCounter == matchMax) return false;
	else return true;
}	 
 
function isPhoneWithExt(phoneStr) {
	var phonePat;
	var phoneStrTmp;		
	var matchArray;
	var matchMax = 0;
	var matchCounter = 0;	
	// US
	matchMax += 1;
	phonePat = /^1?(-|\.| )?\(?(\d{3})\)?(-|\.| )?([a-zA-Z0-9]{3})(-|\.| )?([a-zA-Z0-9]{4})( *(Ext\.|Ext|x) *\d+)?$/;
	//phonePat = /^1?-?\(?(\d{3})\)?-(\d{3})-(\d{4})( x\d+)?$/;
	matchArray = phoneStr.match(phonePat);
	if (matchArray == null) {
		matchCounter += 1;
	}
	if (matchCounter == matchMax) return false;
	else return true;
}	 
    

var whitespace = " \t\n\r";
function isEmpty(s)
{   return ((s == null) || (s.length == 0))
}

function isWhitespace(s)

{   var i;
       if (isEmpty(s)) return true;
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (whitespace.indexOf(c) == -1) return false;
    }
    return true;
}


function validate(sendForm)
{
	
	if (isWhitespace(sendForm.firstName.value) || (sendForm.firstName.value=='First Name'))
		{
			alert ("Please enter your first name.");
			sendForm.firstName.focus();
			return false;
		} 
	else if (isWhitespace(sendForm.lastName.value) || (sendForm.lastName.value=='Last Name'))
		{
			alert ("Please enter your last name.");
			sendForm.lastName.focus();
			return false;
		} 
	
	else if (isWhitespace(sendForm.cname.value) || (sendForm.cname.value=='Company Name'))
		{
			alert ("Please enter your company name.");
			sendForm.cname.focus();
			return false;
		} 
	
	else  if(sendForm.JobFunction.options[sendForm.JobFunction.selectedIndex].value == 'Job Function')
		{
			alert ("Please select your job function.");
			sendForm.JobFunction.focus();
			return false;
		}	
		
	else if (isWhitespace(sendForm.email.value) || (sendForm.email.value=='E-mail'))
		{
			alert("Please enter an Email.")
			sendForm.email.focus()
			return false
		}	
	else if (!isEmail(sendForm.email.value))
		{
			alert("Please enter a valid Email.");
			sendForm.email.focus();
			return false;
		}
	else if (isWhitespace(sendForm.phone.value) || (sendForm.phone.value=='Phone Number'))
		{
			alert("Please enter your phone number.")
			sendForm.phone.focus()
			return false
		}	
	else if (!isPhoneWithExt(sendForm.phone.value))
		{
			alert("Please enter a valid phone number. \nFormat required: xxx-xxx-xxxx");
			sendForm.phone.focus();
			return false;
		}	
		
		
	else if (isWhitespace(sendForm.address.value) || (sendForm.address.value=='Street Address'))
		{
			alert("Please enter your address.");
			sendForm.address.focus();
			return false;
		}		
		
	else if (isWhitespace(sendForm.city.value) || (sendForm.city.value=='City'))
		{
			alert("Please enter your city.");
			sendForm.city.focus();
			return false;
		}	
		
	else  if(sendForm.state.options[sendForm.state.selectedIndex].value == "State")
		{
			alert("Please select your state.");
			sendForm.state.focus();
			return false;
		}	
					
	else  if(sendForm.country.options[sendForm.country.selectedIndex].value == "Country")
		{
			alert("Please select your country.");
			sendForm.country.focus();
			return false;
		}	
		
	else if (isWhitespace(sendForm.zip.value) || (sendForm.zip.value=='ZIP code'))
		{
			alert("Please enter your ZIP code.");
			sendForm.zip.focus();
			return false;
		}			
	else
		{
		return true;
		}		
}
