function IsNumeric(sText)
{
   var ValidChars = "0123456789";
   var IsNumber=true;
   var Char; 
	for (i = 0; i < sText.length && IsNumber == true; i++) 
	  { 
	  Char = sText.charAt(i); 
	  if (ValidChars.indexOf(Char) == -1) 
		 {
			IsNumber = false;
		 }
	  }
		return IsNumber;		
}

function InvalidCharachter1(testField)
{
	var invalidChars = '0123456789`~!@#$%^&*()[]\{\}\-_+=/\'\\"<>,.;:?^|';
	for (i=0; i<invalidChars.length; i++) {
		if (testField.indexOf(invalidChars.charAt(i),0) > -1)
		{
			return false;			
		}
	}
}

function trim(s)
   {
	s = s.replace( /^\s*/, "" );
	return s.replace( /\s*$/, "" );
   }
	function validate()
	{	
		
		if(document.frmContactUs.txtFirstName.value.trim() == '')
		{ 
		  alert("Please enter your first name.");
		  document.frmContactUs.txtFirstName.focus();
		  return false;
		}
		if(IsNumeric(document.frmContactUs.txtFirstName.value.trim())==true)
		{ 
		  alert("First name should contain only alphabets.");
		  document.frmContactUs.txtFirstName.focus();
		  return false;
		}
		if(InvalidCharachter1(document.frmContactUs.txtFirstName.value.trim())==false)
		{ 
			alert("First name should contain only alphabets.");
			document.frmContactUs.txtFirstName.focus();
			return false;
		}
		if(document.frmContactUs.txtLastName.value.trim() == '')
		{ 
		  alert("Please enter your last name.");
		  document.frmContactUs.txtLastName.focus();
		  return false;
		}
		if(IsNumeric(document.frmContactUs.txtLastName.value.trim())==true)
		{ 
		  alert("Last name should contain only alphabets.");
		  document.frmContactUs.txtLastName.focus();
		  return false;
		}
		if(InvalidCharachter1(document.frmContactUs.txtLastName.value.trim())==false)
		{ 
			alert("Last name should contain only alphabets.");
			document.frmContactUs.txtLastName.focus();
			return false;
		}
		if(document.frmContactUs.txtEmailAddress.value.trim() == false)
		{ 
		  alert("Please enter your email address");
		  document.frmContactUs.txtEmailAddress.focus();
		  return false;

		}

		emailStr1=document.frmContactUs.txtEmailAddress.value.trim();
		//alert(emailStr1);
		if(emailStr1=="")
		{
			alert("Please enter your email address");
			document.frmContactUs.txtEmailAddress.focus();
			return false;
		}
		if(isEmail(emailStr1) == false)
		{
			document.frmContactUs.txtEmailAddress.focus();
			return false;
		}	

	function isEmail(emailStr1)
	{
		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=emailStr1.match(emailPat)
		if (matchArray==null) {
			alert("Email address seems incorrect (check @ and .'s)")		
			return false
		}
		var user=matchArray[1]
		var domain=matchArray[2]
		if (user.match(userPat)==null) {
			alert("The username 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("Destination IP address is invalid.")
					return false
				}
			}	    
			return true
		}
		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>3) {
		   alert("The address must end in a three-letter domain, or two letter country.")
		   return false
		}
		if (len<2) {
		   var errStr="This address is missing a hostname."
		   alert(errStr)
		   return false
		}	
		return true

	}

	/*if(document.frmContactUs.txtPhoneNumber.value=="" )
	{
	
		alert("Please enter Telephone number:");
		document.frmContactUs.txtPhoneNumber.focus();
		return false;		
	}*/	
	
	if(document.frmContactUs.txtPhoneNumber.value.trim() != '' && IsNumeric(document.frmContactUs.txtPhoneNumber.value.trim())==false)
	{
		alert("Please enter valid telephone number");
		document.frmContactUs.txtPhoneNumber.focus();
		return false;
	}
	if(document.frmContactUs.txtPhoneNumber.value.trim() != '' && document.frmContactUs.txtPhoneNumber.value.length<7)
	{
		alert("Please enter valid telephone number.");
		document.frmContactUs.txtPhoneNumber.focus();
		return false;
	}			
	
	if(document.frmContactUs.txtSubject.value.trim()=="" )
	{
		alert("Please enter subject");
		document.frmContactUs.txtSubject.focus();
		return false;		
	}	
	if(document.frmContactUs.txtMessage.value.trim()=="" )
	{
		alert("Please enter your message");
		document.frmContactUs.txtMessage.focus();
		return false;		
	}
	if(document.frmContactUs.number.value.trim()=='')
	{
		alert("Please enter the string as shown in the image.");
		document.frmContactUs.number.focus();
		return false;
	}
	var number1=document.frmContactUs.number.value.trim();
	var imeg1=document.frmContactUs.dk.value.trim();
	var captcha=document.frmContactUs.captcha.value.trim();

	if(number1!=imeg1)
	{
		alert("Please enter the correct string as shown in the image.");
		document.frmContactUs.number.focus();
		return false;
	}
	else
		return true;
	}