function deleteBlanks(entry)
{
	var len = entry.length ;
	var foundBlank = 1;
	while(foundBlank == 1 && len > 0) 
	{
		var indx = entry.indexOf(" ");
		if(indx == -1) 
			foundBlank = 0 ;
		else
			entry = entry.substring(0,indx) + entry.substring(indx+1,len);
		len = entry.length;
	}
	return entry;
}
function isTextAreaEmpty(val,valName){
	var val1 = val.value;
	var len = val1.length;  
	v= "\r\n";
	for(i=0; i < (len/2); i++){
		v= v++;
	}	
	if (val1== v || deleteBlanks(val1)=='' || val1==' ') {
		alert(valName + " is required");
		val.focus();
		val.select();
		return false;
	}
	else {
		return true;
	}
}

//alows only A-Z, 0-9 and spaces
function isValidText(frmElement, fieldName) {
	myRegExp = new RegExp("[^a-z,0-9,\\s]", "i"); 
	if(myRegExp.test(frmElement.value)) {
		alert("Special characters not allowed in " + fieldName);
		frmElement.focus();
		frmElement.select();
		retVal = false;
	}
	else {
		retVal = true;
	}
	return retVal;
}

function isTel(val1,val2,val3,valName)
{
	inv=0;
	v=val1.value+val2.value+val3.value;
	if (v!="")
	{
		if (v.length<10)
			inv=1;
		for (var i=0;i<v.length && inv==0;i++)
		{
			if ( v.charAt(i)<"0" || v.charAt(i)>"9")
				inv=1;
		}
		if (inv==1)
		{
			alert (valName + " is invalid")
			val1.focus();
			val1.select();
			return false;
		}
	}
	return true;
}

function isNumber(val)
{
	count=0;
	str = val.toString();
	for (i=0;i<str.length;i++)
	{
		ch = str.substr(i, 1);
   	    if (ch<"0" || ch>"9")
			return false;
	}
    return true;
}

function isEmpty(val,valName)
{
	if (!deleteBlanks(val.value))
	{
		alert("Please enter "+ valName);
		val.focus();
		return false;	
	}
	return true;
}

function isEmail(val)
{
	var tmp = val.value;
	if (isEmpty(val,"Email Address"))
	{
		if (tmp.indexOf("@")<1 || tmp.indexOf(".")<1 || tmp.indexOf(".")>eval(tmp.length)-3 || tmp.length<6)
		{
			alert("Email Address is invalid")
			val.focus();
			val.select();
			return false;	
		}
	}
	else
		return false;
	return true;
}

function isZip(frmElement) {
	var str = frmElement.value;
	for(var i=0; i < str.length; i++) {
		if(str.charAt(i) == '.') {
			alert('Invalid Zip');
			frmElement.select();
			frmElement.focus();
			return false;
		}
	}
	return true;	
}

function validate()
{
	if(!isEmpty(document.contact.name,"Name"))
		return false;

	if(!isValidText(document.contact.name,"Name"))
		return false;isValidText

	/*if(!isEmpty(document.contact.address,"Address"))
		return false;*/
	if(!isTextAreaEmpty(document.contact.address,"Address"))
		return false;

	if(!isEmpty(document.contact.city,"City"))
		return false;

	if(!isValidText(document.contact.city,"City"))
		return false;isValidText

	if(document.contact.state[document.contact.state.selectedIndex].value=="")
	{
		alert("Select a State");
		document.contact.state.focus();
		return false;
	}

	if(!isEmpty(document.contact.zip,"Zip Code"))
		return false;

	if (!isNumber(document.contact.zip.value))
	{
		alert("Zip Code can only be numeric");
		document.contact.zip.focus();
		document.contact.zip.select();
		return false;
	}
		
	if(!isZip(document.contact.zip))
		return false;

	if ( (!deleteBlanks(document.contact.telephone1.value)) && (!deleteBlanks(document.contact.telephone2.value)) && (!deleteBlanks(document.contact.telephone3.value)) )
	{
		alert("Please enter Phone Number");
		document.contact.telephone1.focus();
		return false;	
	}

	if(!isTel(document.contact.telephone1,document.contact.telephone2,document.contact.telephone3,"Phone Number"))
		return false;

	/*if(!isTel(document.contact.cell1,document.contact.cell2,document.contact.cell3,"Cell Phone"))
		return false;

	if(!isTel(document.contact.fax1,document.contact.fax2,document.contact.fax3,"Fax"))
		return false;*/

	if(!isEmpty(document.contact.email,"Email"))
		return false;

	if(!isEmail(document.contact.email))
		return false;

}