function validate(frm)
{
var msg='';
 if(trimString(frm.cname.value)=="")
  {
   alert("Enter your name");
   frm.cname.focus();
   return false;
  }
  
 if(trimString(frm.address.value)=="")
  {
   alert("Enter your Address");
   frm.address.focus();
   return false;
  }
	if(trimString(frm.zip.value)!='')
	{
	msg=validZip(frm.zip,"Zip");
	if(msg!='')
	 {
		alert(msg);
		return false;
	 }
	}

  
 if(trimString(frm.phone.value)=="")
  {
   alert("Enter your phone");
   frm.phone.focus();
   return false;
  }  

   else
    {
     if(isNumber(trimString(frm.phone.value))==false)
      {   
       alert("Invalid Number!");      
       frm.phone.select();
       return false;       
      }
    }
    
 if(trimString(frm.email.value)=="")
  {
   alert("Enter your email-id");
   frm.email.focus();
   return false;
  } 
   else
    {
     if(echeck(trimString(frm.email.value))==false)
      {
       frm.email.select();
       return false;     
      }    
    }  
	 return true;
}



function echeck(str) 
  {
	var at="@"
	var dot="."
	var lat=str.indexOf(at)
	var lstr=str.length
	var ldot=str.indexOf(dot)
	if (str.indexOf(at)==-1){
	   alert("Invalid E-mail ID")
	   return false
	}

	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
	   alert("Invalid E-mail ID")
	   return false
	}

	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
	    alert("Invalid E-mail ID")
	    return false
	}

	 if (str.indexOf(at,(lat+1))!=-1){
	    alert("Invalid E-mail ID")
	    return false
	 }

	 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
	    alert("Invalid E-mail ID")
	    return false
	 }

	 if (str.indexOf(dot,(lat+2))==-1){
	    alert("Invalid E-mail ID")
	    return false
	 }

	 if (str.indexOf(" ")!=-1){
	    alert("Invalid E-mail ID")
	    return false
	 }

	 return true					
 } 
 
 
 function isNumber(data)
 {
 
              
 	var numStr="1234567890/+ -_)(.,";
 	var thisChar;
 	var counter=0;
 	for(var i=0; i < data.length; i++)
 		{
 			thisChar=data.substring(i,i+1);
 			if(numStr.indexOf(thisChar)!=-1)
 			{counter++;}
 		}
 		if(counter==data.length)
 		{return true;}
 		else
 		 {
 		  return false;
 		  alert("Invalid Number!"); 
 		 }
 } 
function trimString (str)
{
  //str = this != window? this : str;
  return str.replace(/^\s+/g, '').replace(/\s+$/g, '');
}

function validZip(formField,fieldLabel)
{


	var message = "";
	var valid = "0123456789-";
	var hyphencount = 0;
	var field = trimString(formField.value);

	if (field.length!=5 && field.length!=10) 
	{

		message =  "Please enter 5 digit or 5 + 4 digit " + fieldLabel ;
		//alert(message);
		return(message);

	}

	for (var i=0; i < field.length; i++) 
	{
		temp = "" + field.substring(i, i+1);
		if (temp == "-") hyphencount++;
		if (valid.indexOf(temp) == "-1") 
		{
			message = "Please enter Valid " + fieldLabel ;
			return message;
		}
		if ((hyphencount > 1) || ((field.length==10) && ""+field.charAt(5)!="-")) 
		{
			message = "Please enter Valid " + fieldLabel + " (12345-6789)";
			return message;
		}
		if ((hyphencount > 1) || ((field.length==5) && ""+field.charAt(4)=="-")) 
		{
			message = "Please enter Valid " + fieldLabel + " (12345-6789)";
			return message;
		}
	}

	return message;
	
}