function IsNumeric(strString)
   //  check for valid numeric strings	
   {
   var strValidChars = "0123456789.";
   var strChar;
   var blnResult = true;

   if (strString.length == 0) return false;

   //  test strString consists of valid characters listed above
   for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
   }
function IsNonDecimal(strString)
   //  check for valid numeric strings	
   {
   var strValidChars = "0123456789";
   var strChar;
   var blnResult = true;

   if (strString.length == 0) return true;

   //  test strString consists of valid characters listed above
   for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
   }
function emailCheck (emailStr)
{
var checkTLD=1;
var knownDomsPat=/^(com|net|org|edu|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;
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];
for (i=0; i<user.length; i++) {
if (user.charCodeAt(i)>127) {
//alert("Ths username contains invalid characters.");
return false;
   }
}
for (i=0; i<domain.length; i++) {
if (domain.charCodeAt(i)>127) {
//alert("Ths domain name contains invalid characters.");
return false;
   }
}
// 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;
}
var IPArray=domain.match(ipDomainPat);
if (IPArray!=null) {
for (var i=1;i<=4;i++) {
if (IPArray[i]>255) {
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) {
return false;
   }
}
if (checkTLD && domArr[domArr.length-1].length!=2 && 
domArr[domArr.length-1].search(knownDomsPat)==-1) {
return false;
}
if (len<2) {
return false;
}
return true;
}
function isURL(argvalue) {

  if (argvalue.indexOf(" ") != -1)
    return false;
  else if (argvalue.indexOf("http://") == -1)
    return false;
  else if (argvalue == "http://")
    return false;
  else if (argvalue.indexOf("http://") > 0)
    return false;

  argvalue = argvalue.substring(7, argvalue.length);
  if (argvalue.indexOf(".") == -1)
    return false;
  else if (argvalue.indexOf(".") == 0)
    return false;
  else if (argvalue.charAt(argvalue.length - 1) == ".")
    return false;

  if (argvalue.indexOf("/") != -1) {
    argvalue = argvalue.substring(0, argvalue.indexOf("/"));
    if (argvalue.charAt(argvalue.length - 1) == ".")
      return false;
  }

  if (argvalue.indexOf(":") != -1) {
    if (argvalue.indexOf(":") == (argvalue.length - 1))
      return false;
    else if (argvalue.charAt(argvalue.indexOf(":") + 1) == ".")
      return false;
    argvalue = argvalue.substring(0, argvalue.indexOf(":"));
    if (argvalue.charAt(argvalue.length - 1) == ".")
      return false;
  }

  return true;

}

function Trim(TRIM_VALUE){
if(TRIM_VALUE.length < 1){
return"";
}
TRIM_VALUE = RTrim(TRIM_VALUE);
TRIM_VALUE = LTrim(TRIM_VALUE);
if(TRIM_VALUE==""){
return "";
}
else{
return TRIM_VALUE;
}
} //End Function

function RTrim(VALUE){
var w_space = String.fromCharCode(32);
var v_length = VALUE.length;
var strTemp = "";
if(v_length < 0){
return"";
}
var iTemp = v_length -1;

while(iTemp > -1){
if(VALUE.charAt(iTemp) == w_space){
}
else{
strTemp = VALUE.substring(0,iTemp +1);
break;
}
iTemp = iTemp-1;

} //End While
return strTemp;

} //End Function

function LTrim(VALUE){
var w_space = String.fromCharCode(32);
if(v_length < 1){
return"";
}
var v_length = VALUE.length;
var strTemp = "";

var iTemp = 0;

while(iTemp < v_length){
if(VALUE.charAt(iTemp) == w_space){
}
else{
strTemp = VALUE.substring(iTemp,v_length);
break;
}
iTemp = iTemp + 1;
} //End While
return strTemp;
} //End Function

function formvalidate(frm)
{
	/*frm.name.value		= Trim(frm.name.value);
	frm.address.value	= Trim(frm.address.value);
	frm.city.value		= Trim(frm.city.value);
	frm.country.value	= Trim(frm.country.value);
	frm.contactno.value	= Trim(frm.contactno.value);
	frm.email.value		= Trim(frm.email.value);
	frm.comments.value	= Trim(frm.comments.value);*/
   if(frm.title.selectedIndex == "0")
	{
		alert("Please select the title");
		frm.title.focus();
		return false;
	}
	else if(frm.firstname.value.length <= 0)
	{
		alert("Please enter your first name");
		frm.firstname.focus();
		return false;
	}
	
	else if(frm.lastname.value.length <= 0)
	{
		alert("Please enter your last name");
		frm.lastname.focus();
		return false;
	}
	else if(frm.company.selectedIndex == "0")
	{
		alert("Please select the company");
		frm.company.focus();
		return false;
	}
	else if(frm.reason.selectedIndex == "0")
	{
		alert("Please select the reason for contacting us");
		frm.reason.focus();
		return false;
	}

	else if(frm.subject.value.length <= 0)
	{
		alert("Please enter the subject");
		frm.subject.focus();
		return false;
	}
	else if(frm.message.value.length <= 0)
	{
		alert("Please enter the message");
		frm.message.focus();
		return false;
	}
	else if(!IsNonDecimal(frm.telephone.value))
	{
		alert("Please enter only numeric values for telephone number");
		frm.telephone.focus();
		return false;
	}
	else if(!IsNonDecimal(frm.fax.value))
	{
		alert("Please enter only numeric values for fax number");
		frm.fax.focus();
		return false;
	}
	else if(frm.Email.value.length <= 0)
	{
		alert("Please enter your email ID");
		frm.Email.focus();
		return false;
	}
	else if(!emailCheck (frm.Email.value))
	{
		alert("Please enter your email ID in correct format");
		frm.Email.focus();
		return false;
	}
	else
		return true;

}


function enquiryvalidate(frm)
{
	/*frm.name.value		= Trim(frm.name.value);
	frm.address.value	= Trim(frm.address.value);
	frm.city.value		= Trim(frm.city.value);
	frm.country.value	= Trim(frm.country.value);
	frm.contactno.value	= Trim(frm.contactno.value);
	frm.email.value		= Trim(frm.email.value);
	frm.comments.value	= Trim(frm.comments.value);*/
   if(frm.title.selectedIndex == "0")
	{
		alert("Please select the title");
		frm.title.focus();
		return false;
	}
	else if(frm.firstname.value.length <= 0)
	{
		alert("Please enter your first name");
		frm.firstname.focus();
		return false;
	}
	
	else if(frm.lastname.value.length <= 0)
	{
		alert("Please enter your last name");
		frm.lastname.focus();
		return false;
	}
	
	 if(frm.department.selectedIndex == "0")
	{
		alert("Please select the department");
		frm.department.focus();
		return false;
	}
	else if(frm.subject.value.length <= 0)
	{
		alert("Please enter the subject");
		frm.subject.focus();
		return false;
	}
	else if(frm.message.value.length <= 0)
	{
		alert("Please enter the enquiry message");
		frm.message.focus();
		return false;
	}
	else if(frm.telephone.value.length <= 0)
	{
		alert("Please enter the telephone no.");
		frm.telephone.focus();
		return false;
	}
	else if(!IsNonDecimal(frm.telephone.value))
	{
		alert("Please enter only numeric values for telephone number");
		frm.telephone.focus();
		return false;
	}
	else if(frm.fax.value.length <= 0)
	{
		alert("Please enter the fax no.");
		frm.fax.focus();
		return false;
	}
	else if(!IsNonDecimal(frm.fax.value))
	{
		alert("Please enter only numeric values for fax number");
		frm.fax.focus();
		return false;
	}
	else if(frm.Email.value.length <= 0)
	{
		alert("Please enter your email ID");
		frm.Email.focus();
		return false;
	}
	else if(!emailCheck (frm.Email.value))
	{
		alert("Please enter your email ID in correct format");
		frm.Email.focus();
		return false;
	}
	else
		return true;

}