 	       	     	        
///// VALIDATE FUNCTIONS////////////////////////////////	 	       
var checkInfoAll="";

	
function fix_email(sVal)
{
	sVal = sVal.replace(/@_/i, "@");
	sVal = sVal.replace(/\s@\s|\s@|@\s/i, "@");
	sVal = sVal.replace(/_\._|_\.|\._/i, ".");
	sVal = sVal.replace(/\s\.\s|\s\.|\.\s/i, ".");
	sVal = sVal.replace(/,/gi, ".");
	return sVal;
}
	
	
  function validate_EmailId()
	{
	var docF=document.postForm;
	var mField=docF.txtEmailId;
	//var mFieldScreenName=docF.txtScreenName;
	var mEmailValBeforeAtSign=mField.value.split("@");
	//var mdivElement=document.getElementById('hintdiv_txtEmailId');
	var errmsgElement=document.getElementById('errmsg_EmailId');
	
	mField.value=fix_email(trim(mField.value));
	//toggleErrDiv('hide','hintdiv_txtEmailId');
	errmsgElement.innerHTML="";
	    if (trim(mField.value)=="")
			{
				mField.className="inpField_err"
				errmsgElement.innerHTML="Email Id is mandatory."
				return false;
			}
		else if (trim(mField.value).length > 60)
		    {   errmsgElement.innerHTML="Email Id should not have more than 60 charcters.";
	    	    mField.className="inpField_err"
	    	    return false;
		    }	
		else if(/@govaastu.com/gi.test(trim(mField.value)))
			{	
				mField.className="inpField_err"
				errmsgElement.innerHTML="Please enter valid Email Id. This Email Id doesnot exist."			
		    	return false;
	    	}
	    //else if (mField.value.toLowerCase()==mFieldScreenName.value.toLowerCase())
	   // 	{   errmsgElement.innerHTML="Screen Name and Email Id cannot be same.";
	   //     	mField.className="inpField_err"
	    //		return false;
		//	}
	   // else if (mFieldScreenName.value.toLowerCase()==mEmailValBeforeAtSign[0].toLowerCase())
		//	{   errmsgElement.innerHTML="Screen Name and EmailId (text before the @ sign) cannot be same.";
	    //		mField.className="inpField_err"
	    	//	return false;
			//}	
	//	else if (trim_allspaces(mFieldScreenName.value.toLowerCase())==mEmailValBeforeAtSign[0].toLowerCase())
	//		{   errmsgElement.innerHTML="Screen Name and EmailId (text before the @ sign) cannot be similar.";
	//    		mField.className="inpField_err"
	//    		return false;
	//		}								
		else if(!isValidEmail(trim(mField.value)))
			{	
				mField.className="inpField_err"		
				errmsgElement.innerHTML="Please enter valid email"				
		    	return false;
	    	}
	    else
	        {					
				mField.className="inpField_clear";  
				errmsgElement.innerHTML='';
				//if (checkInfoAll == "" ) 
				//{mURL="registration.aspx?mode=is_emailid_available&emailid=" + escape(mField.value);
	           // sendRequest(mURL,errmsgElement,"Checking if available","Error",null,null);
	           // }
	            return true;
	        } 
	}	
	

	

	
		

function validate_FirstName()
	{
	var docF=document.postForm;            
	var mField=docF.txtFirstName;
	var errmsgElement=document.getElementById('errmsg_FirstName');
	errmsgElement.innerHTML="";	
	if (trim(mField.value)=="")
		{
	        mField.className="inpField_err"
			errmsgElement.innerHTML= "First Name is mandatory."
			return false;
	    }
    else if(trim(mField.value)!="")
		{
            var isFirstNameOk = false;
			var filter = /^[a-zA-Z]+$/
			if(mField.value.search(filter) != -1)
	     	isFirstNameOk = true;
			if(mField.value.indexOf("..") != -1)
			isFirstNameOk = false;
			if(!isFirstNameOk)
		  	{
				errmsgElement.innerHTML="First Name does not seem to be valid. First Name can contain only alphabets.";
				mField.className="inpField_err"	
				return false;
		    }
			else if (mField.value.length > 30)
			{
			    errmsgElement.innerHTML="First Name should not exceed more than 30 characters.";
				mField.className="inpField_err"	
				return false;
			}
			else
			{					
	    		mField.className="inpField_clear";  
				errmsgElement.innerHTML='';
				return true;
	 		} 
			
	   	}
	else
	    {	alert ("hello");				
	    	mField.className="inpField_clear";  
			errmsgElement.innerHTML='';
			return true;
	 	} 
}	

function validate_LastName()
	{
	var docF=document.postForm;            
	var mField=docF.txtLastName;
	var errmsgElement=document.getElementById('errmsg_LastName');
	errmsgElement.innerHTML="";	
	if (trim(mField.value)=="")
		{
		    mField.className="inpField_clear";  
			errmsgElement.innerHTML='';
		    return true;
		}
	else if(trim(mField.value)!="")
		{
	        var isLastNameOk = false;
			var filter = /^[a-zA-Z]+$/
			if(mField.value.search(filter) != -1)
			isLastNameOk = true;
			if(mField.value.indexOf("..") != -1)
			isLastNameOk = false;
			if(!isLastNameOk)
				{
					errmsgElement.innerHTML="Last Name does not seem to be valid. Last Name should contain only alphabets.";
					mField.className="inpField_err"	
					return false;
				}
			else if (mField.value.length>30)
				{
	     		    errmsgElement.innerHTML="Last Name should not exceed more than 30 characters.";
		    		mField.className="inpField_err"	
					return false;
				}
			else
			{					
	    		mField.className="inpField_clear";  
				errmsgElement.innerHTML='';
				return true;
	 		} 	
		}
	else
	    {					
	    	mField.className="inpField_clear";  
			errmsgElement.innerHTML='';
			return true;
	 	} 
}	


function validate_Country()
{
    var docF=document.postForm;    
	var mField = docF.ddlCountry;
	var errmsgElement=document.getElementById('errmsg_Country');
	errmsgElement.innerHTML="";	
	vCountry=mField.options[mField.selectedIndex].value;
	if(vCountry == ""||vCountry=="-1")
	{  // errmsgElement.innerHTML="Please select the country.";
		mField.className="inpField_clear"; 
		errmsgElement.innerHTML='';
		return true;
	}
	
	else
	{
		mField.className="inpField_clear"; 
		errmsgElement.innerHTML='';
		return true;
	}
}


function validate_STD_PhoneNo()
{
    var docF=document.postForm;    
	var mField = docF.txtSTDPhoneNo;
	var mFieldPhoneNo = docF.txtPhoneNo;
	var mFieldMobileNo = docF.txtMobileNo;
	var errmsgElement=document.getElementById('errmsg_PhoneNo');
	errmsgElement.innerHTML="";	
	vSTDPhoneNo=trim(mField.value);
	vPhoneNo=trim(mFieldPhoneNo.value);
	vMobileNo=trim(mFieldMobileNo.value);
	if(vSTDPhoneNo == "")
	{  mField.className="inpField_clear inpFieldsizeISD"; 
		errmsgElement.innerHTML='';
		return true;
	}
	else if (vSTDPhoneNo != "")
	{   
	    if (isNaN(vSTDPhoneNo))
	   {
	    errmsgElement.innerHTML="Invalid Area/STD Code. Please use only numbers.";
		mField.className="inpField_err inpFieldsizeISD"	
		return false;
		}
		else if	(vSTDPhoneNo.length > 6)
	   {
	    errmsgElement.innerHTML="Area/STD Code can't have more than 6 Numbers.";
		mField.className="inpField_err inpFieldsizeISD"	
		return false;
		}
		else if(vPhoneNo == "" && vMobileNo=="")
		{
		errmsgElement.innerHTML="One of the contact number is mandatory.";
		mField.className="inpField_clear inpFieldsizeISD";
		mFieldPhoneNo.className="inpField_err inpFieldsizePh"	
		return false;
		}
		else
		{
		mField.className="inpField_clear inpFieldsizeISD"; 
		errmsgElement.innerHTML='';
		return true;
		}
	}
	else
	{
		mField.className="inpField_clear inpFieldsizeISD"; 
		errmsgElement.innerHTML='';
		return true;
	}

}

function validate_ISD_PhoneNo()
{
    var docF=document.postForm;    
	var mField = docF.txtISDPhoneNo;
	var mFieldPhoneNo = docF.txtPhoneNo;
	var mFieldMobileNo = docF.txtMobileNo;
	var errmsgElement=document.getElementById('errmsg_PhoneNo');
	errmsgElement.innerHTML="";	
	vISDPhoneNo=trim(mField.value);
	vPhoneNo=trim(mFieldPhoneNo.value);
	vMobileNo=trim(mFieldMobileNo.value);
	if(vISDPhoneNo == "")
	{  mField.className="inpField_clear inpFieldsizeISD"; 
		errmsgElement.innerHTML='';
		return true;
	}
	else if (vISDPhoneNo != "")
	{   
	    if (isNaN(vISDPhoneNo))
	   {
	    errmsgElement.innerHTML="Invalid ISD Code. Please use only numbers.";
		mField.className="inpField_err inpFieldsizeISD"	
		return false;
		}
		else if	(vISDPhoneNo.length > 6)
	   {
	    errmsgElement.innerHTML="ISD Code can't have more than 6 Numbers.";
		mField.className="inpField_err inpFieldsizeISD"	
		return false;
		}
		
		else
		{
		mField.className="inpField_clear inpFieldsizeISD"; 
		errmsgElement.innerHTML='';
		return true;
		}
	}
	else
	{
		mField.className="inpField_clear inpFieldsizeISD"; 
		errmsgElement.innerHTML='';
		return true;
	}

}
function validate_ISD_MobileNo()
{
    var docF=document.postForm;    
	var mField = docF.txtISDMobileNo;
	var mFieldPhoneNo = docF.txtPhoneNo;
	var mFieldMobileNo = docF.txtMobileNo;
	var errmsgElement=document.getElementById('errmsg_MobileNo');
	errmsgElement.innerHTML="";	
	vISDMobileNo=trim(mField.value);
	vPhoneNo=trim(mFieldPhoneNo.value);
	vMobileNo=trim(mFieldMobileNo.value);
	if(vISDMobileNo == "")
	{  mField.className="inpField_clear inpFieldsizeISD"; 
		errmsgElement.innerHTML='';
		return true;
	}
	else if (vISDMobileNo != "")
	{   
	    if (isNaN(vISDMobileNo))
	   {
	    errmsgElement.innerHTML="Invalid ISD Code. Please use only numbers.";
		mField.className="inpField_err inpFieldsizeISD"	
		return false;
		}
		else if	(vISDMobileNo.length > 6)
	   {
	    errmsgElement.innerHTML="ISD Code can't have more than 6 Numbers.";
		mField.className="inpField_err inpFieldsizeISD"	
		return false;
		}
		
		else
		{
		mField.className="inpField_clear inpFieldsizeISD"; 
		errmsgElement.innerHTML='';
		return true;
		}
	}
	else
	{
		mField.className="inpField_clear inpFieldsizeISD"; 
		errmsgElement.innerHTML='';
		return true;
	}

}
function validate_PhoneNo()
{
    var docF=document.postForm;    
	var mField = docF.txtPhoneNo;
	var mFieldMobileNo = docF.txtMobileNo;
	var mFieldSTDPhoneNo = docF.txtSTDPhoneNo;
	var mFieldISDPhoneNo = docF.txtISDPhoneNo;
	var mdivElement=document.getElementById('hintdiv_txtPhoneNo');
	var errmsgElement=document.getElementById('errmsg_PhoneNo');
	toggleErrDiv('hide','hintdiv_txtPhoneNo');
	errmsgElement.innerHTML="";	
	vPhoneNo=trim(mField.value);
	vSTDPhoneNo=trim(mFieldSTDPhoneNo.value);
	vISDPhoneNo=trim(mFieldISDPhoneNo.value);
	vMobileNo=trim(mFieldMobileNo.value);
	if(vPhoneNo == "" && vMobileNo=="")
	{   mField.className="inpField_clear inpFieldsizePh"; 
		errmsgElement.innerHTML='';
		return true;
	}
	else if (vPhoneNo != "")
	{   
	   if (isNaN(vPhoneNo))
	   {
	    errmsgElement.innerHTML="Invalid Phone No. Please use only numbers.";
		mField.className="inpField_err inpFieldsizePh"	
		return false;
	   }	   
	   else if (checkPhone(vPhoneNo)==false)
	   {
	    errmsgElement.innerHTML="Invalid Phone No. Please use only numbers and maximum 15 digits.";
		mField.className="inpField_err inpFieldsizePh"	
		return false;
		}
		else if	(vPhoneNo.length > 15)
	   {
	    errmsgElement.innerHTML="Invalid Phone No. Please use maximum 15 digits.";
		mField.className="inpField_err inpFieldsizePh"	
		return false;
		}
		else if	(vSTDPhoneNo =="")
	   {
	    errmsgElement.innerHTML="Please enter the Area/STD Code.";
		mField.className="inpField_clear inpFieldsizePh"	
		mFieldSTDPhoneNo.className="inpField_err inpFieldsizeISD"
		return false;
		}
		else if	(vISDPhoneNo =="")
	   {
	    errmsgElement.innerHTML="Please enter the ISD Code.";
		mField.className="inpField_clear inpFieldsizePh"	
		mFieldISDPhoneNo.className="inpField_err inpFieldsizeISD"
		return false;
		}			
		else
		{
		mField.className="inpField_clear inpFieldsizePh"; 
		errmsgElement.innerHTML='';
		return true;
		}
	}
	else
	{
		mField.className="inpField_clear inpFieldsizePh"; 
		errmsgElement.innerHTML='';
		return true;
	}

}

function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}


var validWorldPhoneChars = "0123456789-+ "; 


function checkPhone(strPhone){
s=stripCharsInBag(strPhone,validWorldPhoneChars);
if (s.length == 0)
	return true;
else 
	return false;
}


function validate_MobileNo()
{
    var docF=document.postForm;    
	var mField = docF.txtMobileNo;
	var mFieldPhoneNo = docF.txtPhoneNo;
	var mFieldISDPhoneNo = docF.txtISDPhoneNo;
	var mdivElement=document.getElementById('hintdiv_txtMobileNo');
	var errmsgElement=document.getElementById('errmsg_MobileNo');
	toggleErrDiv('hide','hintdiv_txtMobileNo');
	errmsgElement.innerHTML="";	
	vMobileNo=trim(mField.value);
	vISDPhoneNo=trim(mFieldISDPhoneNo.value);
	vPhoneNo=trim(mFieldPhoneNo.value);
	if(vMobileNo == "" && vPhoneNo=="")
	{   mField.className="inpField_clear inpFieldsizeMob"; 
		errmsgElement.innerHTML='';
		return true;
	}
	else if (vMobileNo != "")
	{   
	   if (isNaN(vMobileNo))
	   {
	    errmsgElement.innerHTML="Invalid Mobile No. Please use only numbers.";
		mField.className="inpField_err inpFieldsizeMob"	
		return false;
	   }	
	   
	   else if (checkPhone(vMobileNo)==false)
	   {
	    errmsgElement.innerHTML="Invalid Mobile No. Please use only numbers and maximum 15 digits.";
		mField.className="inpField_err inpFieldsizeMob"	
		return false;
		}
		else if	(vMobileNo.length > 15)
	   {
	    errmsgElement.innerHTML="Invalid Mobile No. Please use maximum 15 digits.";
		mField.className="inpField_err inpFieldsizeMob"	
		return false;
		}
		else if	(vISDPhoneNo =="")
	   {
	    errmsgElement.innerHTML="Please enter the ISD Code.";
		mField.className="inpField_clear inpFieldsizePh"	
		mFieldISDPhoneNo.className="inpField_err inpFieldsizeISD"
		return false;
		}		
		else
		{
		mField.className="inpField_clear inpFieldsizeMob"; 
		errmsgElement.innerHTML='';
		return true;
		}
	}
	else
	{
		mField.className="inpField_clear inpFieldsizeMob"; 
		errmsgElement.innerHTML='';
		return true;
	}
}

function validate_Message()
{   
	var docF=document.postForm;            
	var mField=docF.txtMessage;
	var errmsgElement=document.getElementById('errmsg_Message');
	errmsgElement.innerHTML="";	
	
	if (trim(mField.value)=="")
		{
		    mField.className="inpField_errTextBoxMultipleRows"
			errmsgElement.innerHTML= "Message is mandatory."
		    return false;
		}
	else if(trim(mField.value)!="")
		{
	        var isMessageOk = true;
			//alert("hello");
			if ((mField.value.indexOf(">") != -1) || (mField.value.indexOf("<") != -1))
			isMessageOk = false;
			if(!isMessageOk)
				{
					errmsgElement.innerHTML="Message can not contain "<" or '>' charcters";
					mField.className="inpField_errTextBoxMultipleRows"	
					return false;
				}
			else if ((mField.value.length<50) || (mField.value.length>750))
				{
	     		    errmsgElement.innerHTML="Message should be min 50 characters and maximum 750 characters.";
		    		mField.className="inpField_errTextBoxMultipleRows"	
					return false;
				}
			else
				{					
	    			mField.className="inpField_clearTextBoxMultipleRows";  
					errmsgElement.innerHTML='';
					return true;
	 			} 	
		}
	else
	    {					
	    	mField.className="inpField_clearTextBoxMultipleRows";  
			errmsgElement.innerHTML='';
			return true;
	 	} 
}	


	
function validate_Info()
{
  //var errmsgScreenName=document.getElementById('errmsg_ScreenName');
  // alert("hello");
  var errmsgFirstName=document.getElementById('errmsg_FirstName');
  var errmsgLastName=document.getElementById('errmsg_LastName');
   var errmsgEmailId=document.getElementById('errmsg_EmailId');
 


  var errmsgPhoneNo=document.getElementById('errmsg_PhoneNo');
  
  var errmsgMobileNo=document.getElementById('errmsg_MobileNo');
    var errmsgCountry=document.getElementById('errmsg_Country');
   // var errmsgSubject=document.getElementById('errmsg_subject');
    var errmsgMessage=document.getElementById('errmsg_Message');
 
  var error="";
 checkInfoAll= "true" 
// if (!validate_ScreenName()){}else{errmsgScreenName.innerHTML="";}

 if (!validate_FirstName()){error="error";}else{errmsgFirstName.innerHTML="";if (error==""){error="";} }
  
 if (!validate_LastName()){error="error";}else{errmsgLastName.innerHTML="";if (error==""){error="";} }
 if (!validate_EmailId()){error="error";}else{errmsgEmailId.innerHTML="";if (error==""){error="";} } 
 
 if (!validate_ISD_PhoneNo()){error="error";}else{errmsgPhoneNo.innerHTML="";if (error==""){error="";} } 

 if (!validate_STD_PhoneNo()){error="error";}else{errmsgPhoneNo.innerHTML="";if (error==""){error="";} } 
 if (!validate_PhoneNo()){error="error";}else{errmsgPhoneNo.innerHTML="";if (error==""){error="";} }
  
 if (!validate_ISD_PhoneNo()){error="error";}else{errmsgMobileNo.innerHTML="";if (error==""){error="";} } 
 if (!validate_MobileNo()){error="error";}else{errmsgMobileNo.innerHTML="";if (error==""){error="";} }  
 if (!validate_Country()){error="error";}else{errmsgCountry.innerHTML="";if (error==""){error="";} } 

 //if (!validate_Subject()){error="error";}else{errmsgSubject.innerHTML="";if (error==""){error="";} } 
 if (!validate_Message()){error="error";}else{errmsgMessage.innerHTML="";if (error==""){error="";} } 
//alert(error);

 checkInfoAll= "";
  if (error=="error"){return false;}else {return true;} 
}	










//// //// //// //// //// //// //// //// //// //// //// 	
//// functions which are common	
//// //// //// //// //// //// //// //// //// //// //// 
function trim_allspaces(inputString)
{
   if (typeof inputString != "string") { return inputString; }
   
   var retValue = inputString;
   var returnvalue=""; //This will be returned back
   var i=0;
   //alert (retValue);
   if (retValue.indexOf(" ")!=-1)
     	  {
		     while (i <= retValue.length -1)
	        	{ var ch=""
	    			ch=retValue.substring(i, i+1);
					if (ch!=" ")
						{
						returnvalue=returnvalue + ch;
						}
					else
						{
						returnvalue=returnvalue ;
						}
					i++;
			    }
				
				 return returnvalue;
			} 
	else
	{return retValue} 	
   
}
	
function trim(inputString) {
   if (typeof inputString != "string") { return inputString; }
   var retValue = inputString;
   var ch = retValue.substring(0, 1);
   while (ch == " ") {
      retValue = retValue.substring(1, retValue.length);
      ch = retValue.substring(0, 1);
   }
   ch = retValue.substring(retValue.length-1, retValue.length);
   while (ch == " ") {
      retValue = retValue.substring(0, retValue.length-1);
      ch = retValue.substring(retValue.length-1, retValue.length);
   }
   while (retValue.indexOf("  ") != -1) {
      retValue = retValue.substring(0, retValue.indexOf("  ")) + retValue.substring(retValue.indexOf("  ")+1, retValue.length);
   }
   return retValue;
   alert(retValue);
}	

function isValidEmail (emailIn){
	var isEmailOk = false;

	//var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
var filter  =/^[\w_-]+(\.[\w_-]+)*@[\w_-]+(\.[\w_-]+)*\.\w{2,4}$/gi;

	if(emailIn.search(filter) != -1)
		isEmailOk = true;
	if(emailIn.indexOf("..") != -1)
		isEmailOk = false;
	if(emailIn.indexOf(".@") != -1)
		isEmailOk = false;
	if(emailIn.indexOf("'") != -1 || emailIn.indexOf("''") != -1 || emailIn.indexOf("\"") != -1 || emailIn.indexOf("\"\"") != -1 || emailIn.indexOf("(") != -1  || emailIn.indexOf(")") != -1 || emailIn.indexOf("[") != -1 || emailIn.indexOf("]") != -1 || emailIn.indexOf("{") != -1  || emailIn.indexOf("}") != -1 || emailIn.indexOf(",") != -1 || emailIn.indexOf(",,") != -1 || emailIn.indexOf(":") != -1 || emailIn.indexOf(";") != -1 || emailIn.indexOf("#") != -1 || emailIn.indexOf("mailto:") != -1)
		isEmailOk = false;

	return isEmailOk;
} // Ends 	

function getNoOfNumerics(strinput)
{
	var intCountNumericChars = 0;
	for (i=0; i< strinput.length; i++)
	{
	  if (!isNaN(strinput.charAt(i)))
	    {
	      intCountNumericChars++; 
	    }
	
	}
    return intCountNumericChars; 	
} // Ends 




////////////////////AJAX
function toggleErrDiv_new (hMode, hElementName, hElement, hWidth)
{
	
	hLeftPos = 0;
	while(hElement)
	{
		hLeftPos += hElement.offsetLeft;
		 
		hElement = hElement.offsetParent;
	}
	 
	hLeftPos = hLeftPos + hWidth + 25 + "px";
	hDisplay = (hMode == "show") ? "inline" : "none";
   if(mdivElement = eval(document.getElementById('hintdiv_' + hElementName)))
   {	
	mdivElement.style.left = hLeftPos;
	mdivElement.style.display = hDisplay;
	}
}

 function toggleErrDiv(hMode, hElementName)
{
	hDisplay = (hMode == "show") ? "inline" : "none";
	 
	if(mdivElement = eval(document.getElementById(hElementName)))
	{
		mdivElement.style.display = hDisplay;
	}
}
