   // 10 digit US phone number validation

   function strip(filter,str){
   	var i,curChar;
   	var retStr = '';
   	var len = str.length;
   	for(i=0; i<len; i++){
   		curChar = str.charAt(i);
   		if(filter.indexOf(curChar)<0)
   			retStr += curChar;
   	}
   	return retStr;
   }
   function reformat(str){
   	var arg;
   	var pos = 0;
   	var retStr = '';
   	var len = reformat.arguments.length;
   	for(var i=1; i<len; i++){
   		arg = reformat.arguments[i];
   		if(i%2==1)
   			retStr += arg;
   		else{
   			retStr += str.substring(pos, pos + arg);
   			pos += arg;
   		}
   	}
   	return retStr;
   }

   function notEmpty(str){
   	if(strip(" \n\r\t",str).length ==0)
   		return false;
   	else
   		return true;
   }

   function validateUSPhone(str){
   	str = strip("*() -./_\n\r\t\\",str);
   	if(str.length == 10)
   		return true;
   	else
   		return false;
   }

   function formatPhone(str){
   	str = strip("*() -./_\n\r\t\\",str);
   	if(str.length==10)
   		//return reformat(str,"(",3,") ",3,"-",4);
   		return reformat(str,"",3,"",3,"",4);
   }
   function isNumeric(str)
   {
       if (!str) return false;
       var Chars = "0123456789-";

       for (var i = 0; i < str.length; i++) {
          if (Chars.indexOf(str.charAt(i)) == -1)
             return false;
       }
       return true;
   }	
   	

   function validator(form){
   	if(notEmpty(form.phone.value)==false){
   		alert("Please enter a 10 digit phone number.");
   		form.phone.focus();
   		return false;
   	}	
   	if (isNumeric(form.phone.value) == false) {
         alert("Please check non numeric value!");
         form.phone.focus();
   		return false;
      }
   	if(validateUSPhone(form.phone.value)==false){
   		alert("Enter a valid 10 digit phone number.");
   		form.phone.focus();
   		return false;
   	}
   	form.phone.value = formatPhone(form.phone.value);
   	
   }


   // email validation
   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 address")
   		   return false
   		}

   		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
   		   alert("Invalid E-mail address")
   		   return false
   		}

   		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
   		    alert("Invalid E-mail address")
   		    return false
   		}

   		 if (str.indexOf(at,(lat+1))!=-1){
   		    alert("Invalid E-mail address")
   		    return false
   		 }

   		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
   		    alert("Invalid E-mail address")
   		    return false
   		 }

   		 if (str.indexOf(dot,(lat+2))==-1){
   		    alert("Invalid E-mail address")
   		    return false
   		 }
   		
   		 if (str.indexOf(" ")!=-1){
   		    alert("Invalid E-mail address")
   		    return false
   		 }

    		 return true   
   	}


   function validate(form){
   	
   	if(notEmpty(form.fname.value)==false){
   		alert("Please enter your first name.");
   		form.fname.focus();
   		return false;
   	}	
   	
   	if (notEmpty(form.lname.value) == false) {
         alert("Please enter your last name.");
         form.lname.focus();
   		return false;
       }
   	
   	if(notEmpty(form.phone.value)==false){
   		alert("Please enter a 10 digit phone number.");
   		form.phone.focus();
   		return false;
   	}	
   	if (isNumeric(form.phone.value) == false) {
         alert("Please check non numeric value!");
         form.phone.focus();
   		return false;
       }
   	if(validateUSPhone(form.phone.value)==false){
   		alert("Enter a valid 10 digit phone number.");
   		form.phone.focus();
   		return false;
   	}
   	form.phone.value = formatPhone(form.phone.value);
       
       if (echeck(form.email.value) == false) {
   		form.email.value=""
   		form.email.focus()
   		return false
   	}

   	   
   	if (notEmpty(form.email.value) == false) {
   		alert("Please enter your Email address.")
   		form.email.focus()
   		return false
   	}
   	
   	
       //if (notEmpty(form.optionaldata.value) == false) {
   	//	alert("Please enter your comment.")
   	//	form.optionaldata.focus()
   	//	return false
   	//}
   	
   	//createTarget(this.target);

        //window.open('', "chat",'resizable=yes,scrollbars=no,width='+width+',height='+height);

   	window.open("", "chat", "resizable=no,scrollbars=no,width=500,height=320");
   	return true;
   	}
