function chk1_val()
	{		
		
		if(document.frm_login.fname.value=="")
		{
			alert("Please enter your firstname!");
			document.frm_login.fname.focus();
			return false;
		}
		if(document.frm_login.fname.value.length < 3)
		{
			alert("Firstname should be minimum three characters!");
			document.frm_login.fname.focus();
			return false;
		}
		var user = document.frm_login.fname.value;
		var ValidChars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ 1234567890";
		var IsNumber=true;
		var Char;		   
		for (i = 0; i < user.length && IsNumber == true; i++) 
		{ 
			Char = user.charAt(i) ; 
			if (ValidChars.indexOf(Char) == -1) 
			{
				IsNumber = false;
				alert("Please enter valid firstname!");
				document.frm_login.fname.focus();
				return false;
			}
		}	
		if(document.frm_login.lname.value=="")
		{
			alert("Please enter your surname!");
			document.frm_login.lname.focus();
			return false;
		}
		if(document.frm_login.lname.value.length < 3)
		{
			alert("Your surname should be minimum three characters!");
			document.frm_login.lname.focus();
			return false;
		}
		var user = document.frm_login.lname.value;
		var ValidChars ="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ 1234567890";
		var IsNumber=true;
		var Char;		   
		for (i = 0; i < user.length && IsNumber == true; i++) 
		{ 
			Char = user.charAt(i) ; 
			if (ValidChars.indexOf(Char) == -1) 
			{
				IsNumber = false;
				alert("Please enter valid Surname!");
				document.frm_login.lname.focus();
				return false;
			}
		}	
		if(!isValidEmail(document.frm_login.email.value))
		  {
   			
			 document.frm_login.email.focus();
			 return false;
		  }			
/*		if(document.frm_login.phone.value==0 || document.frm_login.phone.value=="")
		{
			alert("Please enter a phone number!");
			document.frm_login.phone.focus();
			return false;
		}
		if(!isAllNumerics1(document.frm_login.phone.value))
		{
			alert("Please enter your proper phone number !!!");
			document.frm_login.phone.focus();
			return false;
		}
*/		
		if(document.frm_login.password.value=="")
		{
			alert("Please enter a password!");
			document.frm_login.password.focus();
			return false;
		}
		if(document.frm_login.password.value.length<6)
		{
			alert("Password should be minimum 6 characters!");
			document.frm_login.password.focus();
			return false;
		}
		if(document.frm_login.newpass.value)
		{
			if(document.frm_login.newpass.value.length<6)
		    {
			  alert("Password should be minimum 6 characters!");
			  document.frm_login.newpass.focus();
			  return false;
		    }
			if(document.frm_login.cpass.value=="")
		     {
			  alert("Please enter confirm password!");
			  document.frm_login.cpass.focus();
			  return false;
		     }
		    if((document.frm_login.newpass.value)!=(document.frm_login.cpass.value))
	          {
		        alert("Both password fields should match!");
				document.frm_login.cpass.value="";
		        document.frm_login.cpass.focus();
			    return false;			
	        }
		}
		if(document.frm_login.address1.value=="")
		  {
			  alert("Please enter Address line!");
			  document.frm_login.address1.focus();
			  return false;
		  }
		if(document.frm_login.city.value=="")
		  {
			  alert("Please enter Town/City!");
			  document.frm_login.city.focus();
			  return false;
		  }
		  if(document.frm_login.state.value=="")
		  {
			  alert("Please enter State!");
			  document.frm_login.state.focus();
			  return false;
		  }
			 
		if(document.frm_login.zip_code.value=="")
		{
			alert("Please enter your Zipcode or Postcode!");
			document.frm_login.zip_code.focus();
			return false;
		}
		if(!isAllNumerics1(document.frm_login.zip_code.value))
		{
			alert("Please enter your proper Zipcode or Postcode!");
			document.frm_login.zip_code.focus();
			return false;
			
		}
/*		if(!isAllNumerics(document.frm_login.zip_code.value))
		{
			alert("Please enter your proper Zipcode or Postcode!");
			document.frm_login.zip_code.focus();
			return false;
			
			}
		if(document.frm_login.country.value=="" || document.frm_login.country.value=="-")
		{
			alert("Please select your Country!");
			document.frm_login.country.focus();
			return false;
		}*/
	}

function chk_login()
	{		
		
		if(!isValidEmail(document.frm_login.email.value))
		  {
			 document.frm_login.email.focus();
			 return false;
		  }			
				
		if(document.frm_login.password.value=="")
		{
			alert("Please Enter Password!");
			document.frm_login.password.focus();
			return false;
		}
	}	

function isValidEmail(emailStr)
{
		if(emailStr=="")
		{
				alert("Please enter your email address!");
				return false;
				
		}
			/* The following pattern is used to check if the entered e-mail address
			   fits the user@domain format.  It also is used to separate the username
			   from the domain. */
			var emailPat=/^(.+)@(.+)$/
			/* The following string represents the pattern for matching all special
			   characters.  We don't want to allow special characters in the address. 
			   These characters include ( ) < > @ , ; : \ " . [ ]    */
			//var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
			var specialChars="\\(\\)<>@,`';:~!#$%^&*+=|{}?\\\\\\\"\\.\\[\\]"
			
			/* The following string represents the range of characters allowed in a 
			   username or domainname.  It really states which chars aren't allowed. */
			var validChars="\[^\\s" + specialChars + "\]"
			/* The following pattern applies if the "user" is a quoted string (in
			   which case, there are no rules about which characters are allowed
			   and which aren't; anything goes).  E.g. "sg cricket"@disney.com
			   is a legal e-mail address. */
			var quotedUser="(\"[^\"]*\")"
			/* The following pattern applies for domains that are IP addresses,
			   rather than symbolic names.  E.g. sg@[123.124.233.4] is a legal
			   e-mail address. NOTE: The square brackets are required. */
			var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
			/* The following string represents an atom (basically a series of
			   non-special characters.) */
			var atom=validChars + '+'
			/* The following string represents one word in the typical username.
			   For example, in sg.sg@somewhere.com, sg and sg are words.
			   Basically, a word is either an atom or quoted string. */
			var word="(" + atom + "|" + quotedUser + ")"
			// The following pattern describes the structure of the user
			var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
			/* The following pattern describes the structure of a normal symbolic
			   domain, as opposed to ipDomainPat, shown above. */
			var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")


			/* Finally, let's start trying to figure out if the supplied address is
			   valid. */

			/* Begin with the coarse pattern to simply break up user@domain into
			   different pieces that are easy to analyze. */
			var matchArray=emailStr.match(emailPat)
			if (matchArray==null) {
			  /* Too many/few @'s or something; basically, this address doesn't
			     even fit the general mould of a valid e-mail address. */
				alert("Email address seems incorrect (check @ and .'s)")
				return false
			}
			var user=matchArray[1]
			var domain=matchArray[2]

			// See if "user" is valid 
			if (user.match(userPat)==null) {
			    // user is not valid
			    alert("The username doesn't seem to be valid.")
			    return false
			}

			/* if the e-mail address is at an IP address (as opposed to a symbolic
			   host name) make sure the IP address is valid. */
			var IPArray=domain.match(ipDomainPat)
			if (IPArray!=null) {
			    // this is an IP address
				  for (var i=1;i<=4;i++) {
				    if (IPArray[i]>255) {
				        alert("Destination IP address is invalid!")
					return false
				    }
			    }
			    return true
			}

			// Domain is symbolic name
			var domainArray=domain.match(domainPat)
			if (domainArray==null) {
				alert("The domain name doesn't seem to be valid.")
			    return false
			}
			var atomPat=new RegExp(atom,"g")
			var domArr=domain.match(atomPat)
			var len=domArr.length
			if (domArr[domArr.length-1].length<2 || 
			    domArr[domArr.length-1].length>5) {
			   // the address must end in a two letter or three letter word.
			   alert("The address must end in a three-letter domain, or two letter country.")
			   return false
			}

			// Make sure there's a host name preceding the domain.
			if (len<2) {
			   var errStr="This address is missing a hostname!"
			   alert(errStr)
			   return false
			}

			// If we've gotten this far, everything's valid!
			return true;
}

function isAllNumerics(objValue)
{
		var characters="0123456789."
		var tmp
		var lTag
		lTag = 0
		temp = (objValue.length)
		//alert(objValue);
		for (var i=0;i<temp;i++)
		{
			tmp=objValue.substring(i,i+1)
			if (characters.indexOf(tmp)==-1)
			{
				lTag = 1
			}
		}
		if(lTag == 1)
			return false
		else
		  if(objValue<=0)
		   {
			return false
		   }else{ 	
			return true
		  }
}
function isAllNumerics1(objValue)
{
		var characters="0123456789.!@#$%^&*()_-+=\|:;<>,>/?"
		var tmp
		var lTag
		lTag = 0
		temp = (objValue.length)
		//alert(objValue);
		for (var i=0;i<temp;i++)
		{
			tmp=objValue.substring(i,i+1)
			if (characters.indexOf(tmp)==-1 || charAt(tmp)==" ")
			{
				lTag = 1
			}
		}
		if(lTag == 1)
			return false
		else
		  if(objValue<=0)
		   {
			return false
		   }else{ 	
			return true
		  }
}
