// functions for Numeric value validation & E-mail id.
function rmspaces(x) 
{
var leftx = 0;
var rightx = x.length -1;
while ( x.charAt(leftx) == ' ') leftx++;
while ( x.charAt(rightx) == ' ') --rightx;
var q = x.substr(leftx,rightx-leftx + 1); 
if ( (leftx == x.length) && (rightx == -1) ) q ='';
return(q)
};
function isnumeric(data)
 {
 var flag = ( (rmspaces(data)).length > 0);
 var isdot = 0;
  if (flag)
  {
       	for (i=0;i<data.length && flag;i++)
 		if ( data.charAt(i) > '9' || data.charAt(i) < '0')
 		   {
 		     if (data.charAt(i) != '.' || isdot > 0)
 		        {
 		          flag = false;
			}
		       else
		        {
			   isdot = 1;
			}
 		   };
  }
 return flag
 }

function checkfield(data)
{
if (rmspaces(data) == "") return false
else return true;
};

function isemail(data)
{
var flag = false;
if (  (data.indexOf('@',0)  == -1) || (data.indexOf('\\',0)  != -1) || (data.indexOf('/',0)  != -1) ||!checkfield(data) || ( data.indexOf('.',0)  == -1 ) || ( data.indexOf('@')  == 0 ) || ( data.lastIndexOf('.') < data.lastIndexOf('@')  ) || ( data.lastIndexOf('.') == (data.length - 1)  ) ||        ( data.lastIndexOf('@')   !=   data.indexOf('@') ) || (data.indexOf(',',0)  != -1) ||  (data.indexOf(':',0)  != -1) || (data.indexOf(';',0)  != -1)  )return flag
else         {
             var temp = rmspaces(data);
             if (temp.indexOf(' ',0) != -1) flag = true;
             var d3 = temp.lastIndexOf('.') + 4;
             var d4 = temp.substring(0,d3);
             var e2 = temp.length  -  temp.lastIndexOf('.')  - 1 ;
             var i1 = temp.indexOf('@') ;
          if (  (temp.charAt(i1+1) == '.') || ( e2 > 3 )  ||  ( e2 < 2 )    ) flag = true;
          return !flag;
                   };
};
function todate(fday,fmon,fyear , tday,tmon,tyear)
{
var fromdt;
var todt;

   fm = parseInt(fmon) - 1;
   tm = parseInt(tmon) - 1;
   var fromdt = new Date(fyear,fm,fday);
   var todt = new Date(tyear,tm,tday);
 
   if (todt < fromdt)
    	    return false;
       else
    	    return true;
};
function req_eMail(e)
{
				eMail = e.value;
				if ((eMail.indexOf("@") != -1) && (eMail.indexOf(".") != -1)) 
				{
					return true;
				}
				else {
				  		return false;
					}
}


function todate(fday,fmon,fyear , tday,tmon,tyear)
{
var fromdt;
var todt;

   fm = parseInt(fmon) - 1;
   tm = parseInt(tmon) - 1;
   var fromdt = new Date(fyear,fm,fday);
   var todt = new Date(tyear,tm,tday);
 
   if (todt < fromdt)
    	    return false;
       else
    	    return true;
};



//----------------- Get a quick quote functions 

	function check(name_of_field)
	{
		//alert("check");
		if(name_of_field=="name1")
		{
			if(document.formindex.name1.value=="")
			{
				document.formindex.name1.value="name";
			}
		}
		if(name_of_field=="email")
		{
			if(document.formindex.email.value=="")
			{
				document.formindex.email.value="e-mail";
			}
		}
		if(name_of_field=="request")
		{
			if(document.formindex.request.value=="")
			{
				document.formindex.request.value="request";
			}
		}
	}

	function erase(name_of_field)
	{
		//alert(name_of_field);
		if(name_of_field=="name1")
		{
			if(document.formindex.name1.value=="name")
			{
				document.formindex.name1.value="";
			}
		}
		if(name_of_field=="email")
		{
			if(document.formindex.email.value=="e-mail")
			{
				document.formindex.email.value="";
			}
		}
		if(name_of_field=="request")
		{
			if(document.formindex.request.value=="request")
			{
				document.formindex.request.value="";
			}
		}
	}

	function isValidEmail(emailStr) 
	{
			var checkTLD=1;
			var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;
		//	var emailPat=/^(.+)@(.+)$/;
			var emailPat=/^(.+)@(.+)$/;
			var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
			var validChars="\[^\\s" + specialChars + "\]";
			var quotedUser="(\"[^\"]*\")";
			var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
			var atom=validChars + '+';
			var word="(" + atom + "|" + quotedUser + ")";
			var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
			var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
			var matchArray=emailStr.match(emailPat);
			if (matchArray==null) {
				alert("Email address seems incorrect (check @ and .'s)");
				return false;
			}
			var user=matchArray[1];
			var domain=matchArray[2];
			// Start by checking that only basic ASCII characters are in the strings (0-127).
			for (i=0; i<user.length; i++) {
				//alert(user.charCodeAt(i))
				if (user.charCodeAt(i)<65) {
					if ((user.charCodeAt(i)<45)|| (user.charCodeAt>57)) {
					alert("Ths Email address contains invalid characters.");
					return false;
					}
				}
				
			}
			for (i=0; i<domain.length; i++) {
				if (domain.charCodeAt(i)>127) {
					alert("Ths Email address contains invalid characters.");
					return false;
				}
			}
			if (user.match(userPat)==null) {
				alert("The Email address doesn't seem to be valid.");
				return false;
			}
			var IPArray=domain.match(ipDomainPat);
			if (IPArray!=null) {
				for (var i=1;i<=4;i++) {
					if (IPArray[i]>255) {
						alert("Email address is invalid!");
						return false;
					}
				}
				return true;
			}
			var atomPat=new RegExp("^" + atom + "$");
			var domArr=domain.split(".");
			var len=domArr.length;
			for (i=0;i<len;i++) {
				if (domArr[i].search(atomPat)==-1) {
					alert("Email address does not seem to be valid.");
					return false;
			   }	
			}
			if (checkTLD && domArr[domArr.length-1].length!=2 && 
				domArr[domArr.length-1].search(knownDomsPat)==-1) {
				alert("The address must end in a well-known domain or two letter " + "country.");
				return false;
			}
		
		// Make sure there's a host name preceding the domain.
		
			if (len<2) {
				alert("This Email address is missing a hostname!");
				return false;
			}	
			return true;
	}

	function valid1()
	{		
		if(document.formindex.name1.value=="name")
		{
			alert("Enter your name");
			document.formindex.name1.focus();
			return false;
		}
		if(document.formindex.email.value=="e-mail")
		{	
			alert("Enter email ID");
			document.formindex.email.focus();
			return false;
		}
		if(!isValidEmail(document.formindex.email.value))
		{				
			document.formindex.email.focus();
			document.formindex.email.select();
			return false;
		} 

		/*
		if(!isemail(document.formindex.email.value))
		{
			alert("Enter valid email ID");
			document.formindex.email.focus();
			return false;
		}*/
		

		if(document.formindex.request.value=="request")
		{	
			alert("Enter Request");
			document.formindex.request.focus();
			return false;
		}

	}
	
	//------ END ---get a quick quote functions 
