/*
-------------------------------------------------------------------------------------------------------------	
	Description	:	This files contains general purpose library functions. 
-------------------------------------------------------------------------------------------------------------	
*/	 
 
	var Err_ShortName_blank = "Short name cannot be blank."  	 

	// Contact us form constants
	var Err_YourName = "Name can contain alphabets and spaces only. It can't be empty."
	var Err_Comments = "Invalid Comments."
	var Err_Email = "Invalid Email."
	var Err_Email_blank = "Email cannot be blank."
	var Err_Password = "Invalid Password."
	var Err_Password_blank = "Password cannot be blank."
 
	
	// Global constants for the validation patterns
	var vld_ShortName =/^[0-9a-zA-Z_ ]*$/
	var vld_Password = /^[a-zA-Z0-9_]*$/
	var vld_Email =  /^(([a-zA-Z0-9\_\-\.]*)@([a-zA-Z0-9\_\-\.]*)([a-zA-Z0-9]*))$/
	 
	
	var gStErrMsg = ""
/*
-------------------------------------------------------------------------------------------------------------	
	Description	:	This functions validates a value against a validation pattern. If the pattern does not 
					matches the value it appends an error message to the error message string. This function 
					is to be used for form validation.
	Parameters 	:	
					pstrPtn -- validation pattern
					pstrVal -- value to be matched against the pattern 
					pstrMsg -- Constant for the error message 
					pstrErrMsg -- Error message string 
					pblnRqd	-- Required or not 						  
					pintMaxLen -- Maximum Length
-------------------------------------------------------------------------------------------------------------	
*/	
	function ValidateField(pstrPtn, pstrVal, pstrMsg, pstrErrMsg, pstrBlkErrMsg, pblnRqd, pintMaxLen)
	{
		pstrVal = trim(pstrVal);
		pstrErrMsg = "";
		var lblnVldFld = true 
		// check whether the field is mandatory
		if ( pblnRqd == true && pstrVal == "" )
		{
			lblnVldFld = false
		}
		// maxlength check
		if( pintMaxLen > -1 && pstrVal.length > pintMaxLen)
		{
			alert(lblnVldFld + '\n' + pstrVal.length + '\n' + pintMaxLen)
			lblnVldFld = false	 		
		}
		// validate value against pattern
		if( eval(pstrPtn).test(pstrVal) == false )
		{
			lblnVldFld = false
		}				
		// generate error message if invalid
		if ( lblnVldFld == false )
		{
			//pstrErrMsg = pstrErrMsg + pstrMsg + "\r"
			pstrErrMsg = pstrMsg
		}
		return pstrErrMsg;
	}
	function isDigit (c)
	{
		return ((c >= "0") && (c <= "9"))
	}
	function trim(s) {
		while (s.substring(0,1) == ' ') {
			s = s.substring(1,s.length);
		}
		while (s.substring(s.length-1,s.length) == ' ') {
			s = s.substring(0,s.length-1);
		}
		return s;
	}

	function validateEmail(email){			 
		// This function is used to validate a given e-mail 
		// address for the proper syntax		
		if (email == ""){
			return false;
		}		 
		posOfAtSign = email.indexOf("@",1)
		if (posOfAtSign == -1){
			return false;
		}
		if (email.indexOf("@",posOfAtSign+1) != -1){
			return false;
		}
		posOfPeriod = email.indexOf(".", posOfAtSign)
		if (posOfPeriod == -1){
			return false;
		}
		if (posOfPeriod+2 > email.length){
			return false;
		}
		return true
	}
