function FunAlphaNumericDot(frm,obj,txt)
{
			var fld=frm[obj];
			var tval = fld.value;
			
			tval = trimLtRt(tval);
			
			for(i=0;i<tval.length;++i)
			{
				str=tval.charAt(i);		
				
				if(!(( str >="a" && str <= "z")||( str >="A" && str <= "Z")||(str==" ")||(str == "&")||(str >="0" && str <= "9")))	
					{	
						alert("The character (" + str +") is invalid");
						//fld.value="";
						fld.select();
						fld.focus();
						return false;
					}
			}
			fld.value = tval;
			return true;
}


function msgBox(obj,msg,setFocus,clrCtrl)
{
	alert(msg);
	obj.select();
	if(clrCtrl == 1)
		//obj.value="";
	if(setFocus == 1)
		obj.focus();	
}

function FunReplaceSpecialChar(frm,obj,txt) 
{
	var fld=frm[obj];
	var tval = fld.value;
   if ((fld.value=fld.value.replace(/^\s+|\s+$/g,"")) == "")
   {
	  alert(txt+" Required");
	  fld.value=""
	  fld.focus();
      return false;
   }
   return true;
}

/************* VALIDATION FOR EMPTY & ZERO REQUIRED FEILDS ***************/
function FunIsNull(frm,obj,txt)
{
//	zeroflag intimates whether zero is allowed as entry or not.
	var fld = frm[obj];
    var tval = trimLtRt(fld.value);
	fld.value = tval;
	if(tval=="")
	{
		alert(txt+" Required");
		fld.focus();
		return false;
	}
	
	return true;
}



/***************VALIDATION CURRENT DATE < GIVEN DATE ****************/
function FunDateCompare(frm,obj1,obj2,obj3,sdat)
{
	var dd=frm[obj1];
	var mm=frm[obj2];
	var yy=frm[obj3];
	
	var dat=new Date(sdat);//Current Date
	var da=new Date(mm.value+dd.value+","+yy.value) /// Given Date
	
	if (da < dat)
	{
		alert("Delivery date is lesser than current date");
		dd.focus();
		return false;
	}
	 return true;
}	

/***************VALIDATION FOR USER ID ****************/
function FunUserName(frm,obj,txt)
{
	var fld=frm[obj]
	tval=fld.value
	
	for(i=0;i<tval.length;++i)
	{
		str=tval.charAt(i);			
		if(!(( str >="0" && str <= "9")||( str >="a" && str <= "z")||( str >="A" && str <= "Z")|| str =="_"))	
		{	
			alert(txt+" is invalid  entry");
			//fld.value="";
			fld.focus();
			return false;
		}	
	}
	return true;
}


/***************VALIDATION FOR NEW PASSWORD AND CONFIRM PASSOWRD ****************/
function FunPwdCheck(frm,obj1,txt)
{
                
		var fld1=frm[obj1];
		
		if (fld1.value=="")
		{
			alert(" password Required")
			fld1.focus();
			return false;
		} 
		return true;
}

/***************VALIDATION FOR NEW PASSWORD AND CONFIRM PASSOWRD ****************/
function FunConfirmPwd(frm,obj1,obj2)
{
		var flag="Y";
		var fld1=frm[obj1];
		var fld2=frm[obj2];
		
		if(fld1.disabled || fld2.disabled)
			return true;	
			
		if (fld1.value!=fld2.value)
		{
			alert("New password and confirm password does not match")
			//fld1.value="";
			fld2.value="";				
			fld1.focus();
			return false;
		} 
		return true; 
}




/***************VALIDATION FOR SELECT DROP DOWN MENU ****************/

function FunSelect(frm,obj,txt) 
 {
 	var fld=frm[obj];
	var str = fld.value;
	if (str == "s" || str=="S" || str=="")
	{
		alert("Select "+txt)
		
		fld.focus();		
		return false;
	}
	return true;
 } 

/***************VALIDATION FOR ALPHABET ,SPACE AND FULLSTOP****************/

function FunAlphabet(frm,obj,txt,dot)
{
	var fld=frm[obj];
	var tval = fld.value;
	
	tval = trimLtRt(tval);
	
	for(i=0;i<tval.length;++i)
	{
		str=tval.charAt(i);		
		if(dot == "0")	
		{
			if(!(( str >="a" && str <= "z")||( str >="A" && str <= "Z")||(str==" ")))	
			{	
				alert(txt+" required alphabetical entry");
				//fld.value="";
				fld.select();
				fld.focus();
				return false;
			}	
		}
		else if(dot == "1")
		{
			if(!(( str >="a" && str <= "z")||( str >="A" && str <= "Z")||(str==" ")||(str==".")||(str=="'")))	
			{	
				alert(txt+" required alphabetical entry");
				//fld.value="";
				fld.select();
				fld.focus();
				return false;
			}	
		
		}
		else if(dot == "2") //written by vijay (It accepts dot and comma with Alphabets)
		{
			if(!(( str >="a" && str <= "z")||( str >="A" && str <= "Z")||(str==" ")||(str=="," )||(str==".")))	
			{	
				alert(txt+" required alphabetical entry");
				//fld.value="";
				fld.select();
				fld.focus();
				return false;
			}	
		
		}
		else if(dot == "3") //written by vijay (only alphabets)
		{
			if(!(( str >="a" && str <= "z")||( str >="A" && str <= "Z")))	
			{	
				alert(txt+" required alphabetical entry");
				//fld.value="";
				fld.select();
				fld.focus();
				return false;
			}	
		
		}
		if(dot == "10")	
		{
			if(!(( str >="a" && str <= "z")||( str >="A" && str <= "Z")||(str==" ")||(str=="&")||( str >="0" && str <= "9")||(str==".")))	
			{	
				alert(txt+" required alphanumeric entry");
				//fld.value="";
				fld.select();
				fld.focus();
				return false;
			}	
		}
	}
	fld.value = tval;
	return true;
}


/***************VALIDATION FOR CHARACTER LENGTH IN TEXTAREA ****************/

function FunTextLength(frm,obj,txt,len) 
 {
 	var fld=frm[obj];
	var str = fld.value;
	if (str.length>len)
	{
		alert(txt+" exceeds "+len+" characters")
		fld.focus();		
		return false;
	}
	return true;
 } 


/***************VALIDATION FOR TIME ENTRY ****************/

function FunTimeCheck(frm,hobj,mobj,txt)
{
	var fld1=frm[hobj];
	var fld2=frm[mobj];
	var hr = fld1.value;
	var mint = fld2.value;	
	if (parseInt(hr)<0 || parseInt(hr)>12)
	{
		alert("Invalid time entry");
		fld1.focus();
		return false;
	}
	if (mint.length<2) 
	{
		alert("Invalid Time Entry")
		fld1.focus();
		return false;
	}
	if (parseInt(mint)<0 || parseInt(mint)>59)
	{
		alert("Invalid time entry");
		fld1.focus();
		return false;
	}
	return true;
}



/******		COMPARES TWO GIVEN DATE	*******/

function FunDateComparision(frm,obj11,obj12,obj13,obj21,obj22,obj23,txt)
{

	//FROM DATE
	var dd1=frm[obj11];
	var mm1=frm[obj12];
	var yy1=frm[obj13];

	//TO DATE
	var dd2=frm[obj21];
	var mm2=frm[obj22];
	var yy2=frm[obj23];

	var dat1=new Date(mm1.value+dd1.value+","+yy1.value) 
	
	var dat2=new Date(mm2.value+dd2.value+","+yy2.value);
	 
	
	if (dat1 > dat2)
	{
		alert(txt);
		dd1.focus();
		return false;
	}
	else
	 return true;
	
}	

/***************VALIDATION FOR NUMERIC ENTRY ONLY 0 - 9 ****************/
function FunNumOnly(frm,obj,txt,dot)
{
	//alert("s");
	var fld = frm[obj];
    tval=fld.value;
    for(i=0;i<tval.length;++i)
	{
		str=tval.charAt(i);		
		if(dot == "0")
		{
			if(!( str >="0" && str <= "9"))	
			{	
				alert(txt+" required numerical entry");
				//fld.value="";
				fld.select();
				fld.focus();
				return false;
			}
		}
		else if(dot == "1")
		{
			if(!( str >="1" && str <= "9"))	
			{	
				alert(txt+" required numerical entry and > 0");
				//fld.value="";
				fld.select();
				
				fld.focus();
				return false;
			}
		}	
	}
    
    /*if(isNaN(tval))
    {
     	alert(txt+" Required Numerical Entry Only");
		fld.value=""; 
		fld.focus();
		return false;
    }*/
    
    return true;
}


/***************VALIDATION FOR NUMERIC ENTRY ONLY 0 - 9 ****************/
function FunDecimal(frm,obj,txt)
{
	var fld = frm[obj];
    tval=fld.value;
    if(isNaN(tval))
    {
     	alert(txt+" Required Numerical Entry Only");
		//fld.value=""; 
		fld.select();
		fld.focus();
		return false;
    }

    if(tval < 0)
    {
     	alert(txt+" Required Positive Entry Only");
		//fld.value=""; 
		fld.select();
		fld.focus();
		return false;
    }

    return true;
}

/***************VALIDATION FOR EMAIL ENTRY ****************/

function FunEmail(frm,obj,txt) 
  {
	
 	var fld=frm[obj];
	var str = fld.value;
	var msg = "You must enter a fully qualified email address (e.g. mailname1@whitehouseindia.com;mailname2@whitehouseindia.com;...)";
	
	if(fld.disabled)
		return true;
		
	if(str.length <= 4)
	{
		msgBox(fld,msg,1,0);
        return false;
	}
	else
		ch = str.charAt(0);
		 
		if(!checkemail(fld))
		return false;
	/* Commented by kesav to fix the bug
	if ((ch == '@') || (ch == '.') || (ch == ';')) 
	{
		msgBox(fld,msg,1,0);
        return false;
     }
	else if ((str.indexOf('@',0) == -1) || (str.indexOf('.',0) == -1) ) 
	{
		msgBox(fld,msg,1,0);
        return false;
     }
    else if (str.indexOf('@.',0) != -1 || str.indexOf('.@',0) != -1 || str.indexOf(';;',0) != -1) 
	{
		msgBox(fld,msg,1,0);
        return false;
     }
	 
	for(i=0;i< str.length;++i)
	{
		ch = str.charAt(i);		
		
		if(!(( ch >="0" && ch <= "9")||( ch >="a" && ch <= "z")||( ch >="A" && ch <= "Z")|| ch == "_" || ch == "@" || ch == "." || ch == ";" || ch == "-"))	
		{	
			if(ch == " ")
			{		
				msgBox(fld, txt + " Space are not allowed",1,0);
			}
			else
			{
				msgBox(fld, "\"" + ch +"\" special character are not allowed" ,1,0);
			}
			return false;
		}	
	}*/

	 return true; 
} 
		
		// added to validate the Email
		function checkemail(fld)
		{
		var testresults;
		var str=fld.value;
		
		var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
		if (filter.test(str))
		
                     testresults=true;
                      else{
                            alert("Please give a valid email or Avoid space!\n");
							fld.focus();
                             testresults=false;
                            }
                 return (testresults)
                          
		
		}

/***************VALIDATION FOR NumERIC VALUES ONLY WITH NO.OF DIGITS ****************/


function FunNumeric(frm,obj,txt,length)
{
		
		var len=length;
		var fld = frm[obj];
		tval=fld.value;
							
		if(tval.length==len)
		{
			for(i=0;i<tval.length;++i)
			{
				str=tval.charAt(i);			
				if(!( str >="0" && str <= "9"))	
				{	
					alert(txt+" required numerical entry ");
					//fld.value="";
					fld.select();
					fld.focus();
					return false;
				}	
			}
		}		
		
		if(tval.length>len)
		{
			alert(txt+' should not exceed '+len+' digits'); 
			//fld.value="";
			fld.select();
			fld.focus();
			return false;
		}

		if(tval.length<len)
		{
			alert(txt+' should not less than '+len+' digits'); 
			//fld.value="";
			fld.select();
			fld.focus();
			return false;
		}

}

//********************     VALIDATION FOR Phone Number with (0-9) and + and "space" VALUES ONLY ********************

function FunPhoneNumber(frm,ctrl,msg)
{
		var fld = frm[ctrl];
		if(fld.disabled)
			return true;
		tval=fld.value;
		tval = trimLtRt(tval);
			if(tval.length==0)
     	{
     			alert(msg + " Number Required");
     			fld.focus();
     			return false;
     	}
     	if (fld.value.length<10)

	{	

		alert("Phone No. Should be 10 digit or a Valid Phone No.");

		fld.focus();

		return false;

	}
	
						/*var mikExp = /[|\t\n\r]/;
						var strPass = fld.value;
						var strLength = strPass.length;
						var lchar = fld.value.charAt((strLength) - 1);
					if(lchar.search(mikExp) != -1)
						 {
							var tst = fld.value.substring(0, (strLength) - 1);
							fld.value = tst;
							alert("White Spaces are Not Allowed")
						}*/
     	/*
     	
     	var mikExp = /[|\t\n\r]/;
				if(!checkemail(fld))
		return false;
				
		  function dodacheck(val) 
					{
						var strPass = fld.value;
						var strLength = strPass.length;
						var lchar = fld.value.charAt((strLength) - 1);
					if(lchar.search(mikExp) != -1)
						 {
							var tst = fld.value.substring(0, (strLength) - 1);
							fld.value = tst;
							alert("White Spaces are Not Allowed")
						}
					}
     	
     	
     	if ( fld.value.length == 0)

	{

		alert("Your phone number cannot be blank.");

		fld.focus();

		return (false);

	}

	if (fld.value.length<10)

	{	

		alert("Incorrect number of characters.");

		fld.focus();

		return(false);

	}

	if (fld.value.lentgh>10)

	{

		alert("Entry consists of more that 10 Chars.")

		phoneNo.focus();

		return(false);

	}

     	if(!CheckPhoneNumber(fld,"your phone No"))
     	{
     		
     		alert("Enter valid " + msg );
     		fld.select();
			fld.focus();
			return false;
     	}
     	*/
     	//  Commented by kesav
     		for(i=0;i<=tval.length-1;i++)
     	{
	     	var str=tval.charAt(i);	
	     	
     		if(!(( str >="a" && str <= "z")||( str >="A" && str <= "Z")||(str==" ")||( str >="0" && str <= "9")||(str=="+")||(str=="-")||(str==",")))
     		{
     			
					//alert(msg+" Should not have (" + str + ") Character");
					alert("Enter valid " + msg );
					//fld.value="";
					fld.select();
					fld.focus();
					return false;
			}
       		}
     	return true;
}
/*
// add the function to fix the phoneNo bug
function CheckPhoneNumber(PhoneNo,TagStr)

{

	// get rid of non-numerics

	var checkOK = new String("0123456789");

	var strNo = new String(PhoneNo.value);

	PhoneNo.value="";

	for ( i = 0; i < strNo.length; i++ )

	{

		ch = strNo.charAt(i);

		for (j = 0;  j < checkOK.length;  j++)

			if (ch == checkOK.charAt(j))

				break;

		if (j != checkOK.length)

		{

			PhoneNo.value=String(PhoneNo.value)+String(ch);
			
		}

	}





	// get rid of leading 1

	if ( ( PhoneNo.value.length == 11 ) && ( PhoneNo.value.charAt(0) == 1 ) )

	{

		PhoneNo.value = PhoneNo.value.substr(1,10);

	}



	if ( (PhoneNo.value.length != 0) && (PhoneNo.value.length < 10) )

	{

		alert("Please enter exactly 10 digits in \"" + TagStr + "\".");

		PhoneNo.focus();

		return (false);

	}



	if (PhoneNo.value.length > 10)

	{

		alert("Please enter exactly 10 digits in \"" + TagStr + "\".");

		PhoneNo.focus();

		return (false);

	}



	var checkStr = PhoneNo.value;

	var allValid = true;

	var decPoints = 0;

	for (i = 0;  i < checkStr.length;  i++)

	{

		ch = checkStr.charAt(i);

		for (j = 0;  j < checkOK.length;  j++)

		if (ch == checkOK.charAt(j))

		break;

		if (j == checkOK.length)

		{

			allValid = false;

			break;

		}

	}

	if (!allValid)

	{

		alert("Please enter only digits in \"" + TagStr + "\".");

		PhoneNo.focus();

		return (false);

	}


/*
	if ( checkStr.length == 10 )

	{

		if ( checkStr.charAt(0) < '2' )

		{

			alert("The first digit of the area code in \"" + TagStr + "\" cannot be a '1' or '0'");

			PhoneNo.focus();

			return (false);

		}



		if ( checkStr.charAt(3) < '2' )

		{

			alert("The first digit of the prefix in \"" + TagStr + "\" cannot be a '1' or '0'");

			PhoneNo.focus();

			return (false);

		}



		if ( checkStr.substring(0,3) == "900" )

		{

			alert("The area code in \"" + TagStr + "\" cannot be '900'");

			PhoneNo.focus();

			return (false);

		}

	}
	





	else

		return (true);

		//alert("OK");



}
*/
// end of the program for phone number validation
// initContrl for initializing the ctrl at load time
function initContrl(frm,ctrlId,splStr)
{
	obj = frm[ctrlId];
	


	
	if(obj.disabled)
		return true;
	
		
	arr = splStr.split("|");
	
	if(arr.length <= 0)
		return false;
	
	//Setting maximum length of the text box
	obj.maxLength = arr[0];
	
	//Setting Disabled property
	if(arr[1]=="RO")
		obj.readOnly =true;
		
	return true;
}

function checkempty(frm,obj,txt)
{
    var fld=frm[obj];
	var tval = fld.value;
  
  
		if(fld.value=="")
		{
			alert(txt+" Required");
			//fld.value="";
			fld.focus();
			return false;   
		}
		return true;
}

// ClickSubmit for Checking the ctrl depending on Variables assignment

function clickSubmit(frm,ctrlId,checkVar,dispMsg)
{
	var obj = frm[ctrlId];
	var arr = checkVar.split("|");
	var arrayLength  = arr.length; 
	var st = frm[ctrlId].disabled;

	if(st == true)
		return true;
		
	if(arrayLength <= 0)
		return false;
		
	if(arrayLength > 2)
	{
		if(arr[3]== "NN" )
		{
			if (!FunIsNull(frm,ctrlId,dispMsg))
				return false;
		}    
	}
		
	//Numeric & Alpha Numeric	
	if(arrayLength > 1)
	{
		if(arr[2]== "N")	
		{
			if(!FunNumOnly(frm,ctrlId,dispMsg,0))
				return false;

			if( arrayLength > 5)
			{
				if(!checkMinMaxRange(frm,ctrlId,arr[4],arr[5]))
					return false;
			}
		}
		else if(arr[2]== "NC")
		{
			if(!FunNumOnly(frm,ctrlId,dispMsg,1))
				return false;

			if( arrayLength > 5)
			{
				if(!checkMinMaxRange(frm,ctrlId,arr[4],arr[5]))
					return false;
			}
		}
		
		else if(arr[2]== "D")
		{
			if(!FunDecimal(frm,ctrlId,dispMsg))
				return false;

			if( arrayLength > 5)
			{
				if(!checkMinMaxRange(frm,ctrlId,arr[4],arr[5]))
					return false;
			}
		
		}
		else if(arr[2] == "A")//with dot
		{
			if(!FunAlphabet(frm,ctrlId,dispMsg,1)) 
				return false;
		}
		else if(arr[2] == "AT")//Accept without dot(.)
		{
			if(!FunAlphabet(frm,ctrlId,dispMsg,0)) 
				return false;
		}
		else if(arr[2] == "AC")//Accept with dot(.) & COMMA(,)
		{
			if(!FunAlphabet(frm,ctrlId,dispMsg,2)) 
				return false;
		}
		else if(arr[2] == "AA")//Accept with dot(.) & COMMA(,)
		{
			if(!FunAlphabet(frm,ctrlId,dispMsg,3)) 
				return false;
		}
		else if(arr[2] == "AN") //accept alphabet and numeric
		{
			if(!CheckAlphaNumeric(frm,ctrlId,dispMsg))
				return false;
		}
		
		else if(arr[2] == "RF") //accept alphabet and numeric
		{
			if(!CheckAlphaNumericWithSlash(frm,ctrlId,dispMsg))
				return false;
		}
		
		else if(arr[2] == "PN")//Phone Number Checking
		{
			if(!FunPhoneNumber(frm,ctrlId,dispMsg))
				return false;
		}
		else if(arr[2] == "AD")//Address
		{
			if(!CheckAddress(frm,ctrlId,dispMsg))
			   return false;
		}
		else if(arr[2] == "EM")//EMAIL
		{
			if(!FunEmail(frm,ctrlId,dispMsg))
			   return false;
		}
		else if(arr[2] == "WA")//WEBSITE ADDRESS
		{
			if(!CheckWebAddr(frm,ctrlId,dispMsg))
			   return false;
		}
		else if(arr[2] == "RN") //RollNo
		{
			if(!CheckAlphaNumericWithDotUnderScore(frm,ctrlId,dispMsg))
			   return false;
		}
		else if(arr[2] == "BG") //BloodGroup
		{
			if(!FunBloodGroupValidate(frm,ctrlId,dispMsg))
			   return false;
		}	
		
			
		
	
	}
	
		
	return true;
}
		
// end of Function FunPhoneNumber to validate Phonenumbers with Spaces and +			

//Function to Validate the Web date chooser
function FunWebDateChooser(frm,ctrl,msg)
{
	//var fname=frm;
	var fld=ctrl+"_input";
	
	if(frm[fld].readOnly)
			return true;
			
	if(frm[fld].value=="Null" ||  frm[fld].value=="Select DOB" ||  frm[fld].value=="Select Date" ||  frm[fld].value=="Select")
	{
		alert(msg+' should not be null');
		frm[fld].focus();
		return false;
	}
	return true;
}

function CheckAlphaNumeric(frm,obj,txt)
{
	var fld = frm[obj];
	tval = fld.value;
	tval = trimLtRt(tval);
/*	if(tval.length > 0 )
	{
		str1=tval.charAt(0);	
		if(str1 >="0" && str1<="9")
		{
			alert(txt + " First Character should not be Numeric");
			fld.value="";
			fld.focus();
			return false;
		}
	}
  */   
   	for(i=0;i<tval.length;++i)
	{
		str=tval.charAt(i);		
		
		if(!(( str >="0" && str <= "9")||( str >="a" && str <= "z")||( str >="A" && str <= "Z") ||( str == "") ))	
		{	
			alert(txt + "\"" + str +"\" special character are not allowed");
			//fld.value="";
			fld.select();
			fld.focus();
			return false;
		}	
	}
	return true;
}

/*  Function for Description*/
function CheckAlphaNumeric1(frm,obj,txt)
{

    var fld = frm[obj];
	tval = fld.value;
	tval = trimLtRt(tval);
   
  
   	for(i=0;i<tval.length;++i)
	{
		str=tval.charAt(i);		
		
		
		if(!(( str >="0" && str <= "9")||( str >="a" && str <= "z")||( str >="A" && str <= "Z")|| str == "." || str == "/" || str == "_"|| str == "'"|| str == "," || str == " " || str == "-" || str == "(" || str == ")" || str == "{" || str == "}" || str=="' "||str == "[" || str == "]" || (str== ">") || (str== "<" )|| str == "\r" || str == "\n"))	
		{	
			alert(txt + "\"" + str +"\" special character are not allowed");
			fld.focus();
			return false;
		}	
	}
	return true;
}

function FunBloodGroupValidate(frm,obj,txt)
{
	var fld = frm[obj];
	tval = fld.value;
	tval = trimLtRt(tval);
	
   	for(i=0;i<tval.length;++i)
	{
		str=tval.charAt(i);		
		
		if(!(( str >="0" && str <= "9")||( str >="a" && str <= "z")||( str >="A" && str <= "Z") || (str == " " )|| (str == "+") || (str == "-")))	
		{	
			alert(txt + "\"" + str +"\" special character are not allowed");
			//fld.value="";
			fld.select();
			fld.focus();
			return false;
		}	
	}
	return true;
}


function CheckDeptID(frm,obj,txt)
{
	var fld = frm[obj];
	tval = fld.value;
	tval = trimLtRt(tval);
	
	if(tval.length == 0)
	{
		alert(txt +" Required");
		fld.select();
		fld.focus();
		return false;
	}
	
   	for(i=0;i<tval.length;++i)
	{
		str=tval.charAt(i);		
		
		if(!(( str >="0" && str <= "9")||( str >="a" && str <= "z")||( str >="A" && str <= "Z")))	
		{	
			alert(txt + "\"" + str +"\" special character are not allowed");
			//fld.value="";
			fld.select();
			fld.focus();
			return false;
		}	
	}
	return true;
}

function CheckAddress(frm,obj,txt)
{
	var fld = frm[obj];
	tval = fld.value;
    tval = trimLtRt(tval);
   	for(i=0;i<tval.length;++i)
	{
		str=tval.charAt(i);		
		
		if(!(( str >="0" && str <= "9")||( str >="a" && str <= "z")||( str >="A" && str <= "Z")|| str == "." || str == "/" || str == "_"|| str == "'"|| str == "#" || str == "," || str == " " || str == "-" || str == "(" || str == ")" || str == "{" || str == "}" || str == "[" || str == "]" || str == "\r" || str == "\n"))	
		{	
			alert("\"" + str +"\" special character are not allowed");
			//fld.value="";
			fld.select();
			fld.focus();
			return false;
		}	
	}
	return true;
}

function CheckWebAddr(frm,obj,txt)
{
	msg = "Enter valid " + txt +" (e.g www.sitename1.com,www.sitename2.com without http://)";
	
	var fld = frm[obj];
	tval = fld.value;
	
	tval = trimLtRt(tval);
	
	tval = tval.toLowerCase();
	var arrAddr = tval.split(",");

	for(i=0; i < arrAddr.length;i++)
	{
		arrVal = arrAddr[i];

		if (arrVal.indexOf("www.",0) != 0 || arrVal.indexOf("..",0) != -1) 
		{
			//msgBox(fld,"WebAddress[ " + (i+1) + " ] not a Valid Address" ,1,0);
			msgBox(fld, msg ,1,0);
			return false;
		}
		    
   		for(j=0;j<arrVal.length;++j)
		{
			str=arrVal.charAt(j);		
			
			if(!(( str >="0" && str <= "9")||( str >="a" && str <= "z")||( str >="A" && str <= "Z")|| str == "." || str == "/" || str == "\\" || str == ":"))
			{	
				if(str == " ")
					alert("Space not allowed");
				else
					alert("\"" + str +"\" special character are not allowed");
					
				//fld.value="";
				fld.select();
				
				fld.focus();
				return false;
			}	
		}
	}
	return true;
}


function checkSelectBoxInfraTab(frm, selId, selText,dispMsg) 
{
	var selVal = frm[selId].item(frm[selId].selectedIndex).text;
	
	if( selVal == selText || selVal== '' )
	{
		
		alert("Select "+ dispMsg);		
		return false;
	}
	return true;	
}

function checkSelectBox(frm, selId, selText,dispMsg) //checking selectBox(Combobox) in the form
{
	var selVal = frm[selId].item(frm[selId].selectedIndex).text;
	
	if( selVal == selText || selVal== '' )
	{
		
		alert("Select "+ dispMsg);
		frm[selId].focus();
		return false;
	}
	return true;
}

function confirmSubmit(frm)
{
	if (!confirm("Do you want to submit?"))
		return false;
		
	frm.submit();
}

function checkSubmit(frm,msg)
{
	txt = msg.toUpperCase();
	if(txt == "NEXT")
		msg = "navigate to next form";

	if (!confirm("Do you want to " + msg + "?"))
		return false;
		
	frm.submit();
	return true;
}

function confirmPage()
{
	return  confirm("Do you want to Reset Current Page?");
}

function confirmReset(frm)
{
	if (!confirm("Do you want to Reset"))
		return false;
		
	 frm.reset();
	 
	return true;
}

function trimLeft(str)
{
	var ch =" ";
	var incr;
	var len = str.length;	
	
	if(len == 0)
		return str;

	incr = 0;
	while(incr < len)
	{
		if(str.charAt(incr) != ch)
		{
		   return str.substring(incr,len);
		}
		incr++;
	}
	return "";
}

function trimRight(str)
{
	var ch =" ";
	var decr;
	
	var len = str.length;
	
	if(len == 0)
		return str;
		
	decr = len-1;
	
	while(decr >= 0)
	{
		if(str.charAt(decr) != ch)
		   return str.substring( 0, decr+1);
		decr--;
	}
	
	return "";
}

function trimLtRt(str)
{
	str = trimLeft(str);
	str = trimRight(str);
	return str;
}

function FunReplaceSpecialChar1(frm,obj,txt) 
{
	var fld=frm[obj];
	var tval = fld.value;   
	if(fld.value=="")
	{
		alert(txt+" Required");
		//fld.value="";
		fld.select();
		fld.focus();
		return false;   
	}
	else
	{	      
   		for(i=0;i<tval.length;++i)
		{
			str=tval.charAt(i);		
			
			if(!(( str >="0" && str <= "9")||( str >="a" && str <= "z")||( str >="A" && str <= "Z")|| str == "_" || str == " " || str == ","))	
			{	
				alert("\"" + str +"\" special character are not allowed");
				//fld.value="";
				fld.select();
				fld.focus();
				return false;
			}	
	    }       
		
	}
	return true;
}
function checkInvalidDate(frm,ctrl) //Only for WebDateChooser
{
	var fld=ctrl+"_input";
	
	alert("Enter Valid Date");
	
	frm[fld].focus();
	
	
	return false;
}



function CheckAlphaNumericWithSlash(frm,obj,txt)
{
	var fld = frm[obj];
	tval = fld.value;
	tval = trimLtRt(tval);

   	for(i=0;i<tval.length;++i)
	{
		str=tval.charAt(i);		
		
		if(!(( str >="0" && str <= "9")||( str >="a" && str <= "z")||( str >="A" && str <= "Z") ||( str == " ")|| (str == "\n")||(str == "\r" ) ))		
		{	
			alert(txt + "\"" + str +"\" special character are not allowed");
			//fld.value="";
			fld.select();
			fld.focus();
			return false;
		}	
	}
	return true;
}

function CheckAlphaNumericWithDotUnderScore(frm,obj,txt)
{
	var fld = frm[obj];
	tval = fld.value;
	tval = trimLtRt(tval);

   	for(i=0;i<tval.length;++i)
	{
		str=tval.charAt(i);		
		
		if(!(( str >="0" && str <= "9")||( str >="a" && str <= "z")||( str >="A" && str <= "Z") || str == "."  || str =="_"))	
		{	
			alert(txt + "\"" + str +"\" special character are not allowed");
			//fld.value="";
			fld.select();
			fld.focus();
			return false;
		}	
	}
	return true;
}
function PostBack(status,CntrlId)
{
     
		if(status == true)
		{
		   __doPostBack(CntrlId,'');
		   return status;
		 }
	return status;
}
/***Alphabetic Validation***/


function FunAlphaNumericDot1(frm,obj,txt)
{
			var fld=frm[obj];
			var tval = fld.value;
			
			tval = trimLtRt(tval);
			
			for(i=0;i<tval.length;++i)
			{
				str=tval.charAt(i);		
				
				//if(!(( str >="a" && str <= "z")||( str >="A" && str <= "Z")||(str==" ")||(str == "&")||(str >="0" && str <= "9")||(str==".")))	
				if(!(( str >="a" && str <= "z")||( str >="A" && str <= "Z")||(str==" ")||(str == "&")||(str==".")||(str == "-")||(str == "_")||(str == "'")))	
				
				
					{	
						alert("The character (" + str +") is invalid");
						//fld.value="";
						fld.select();
						fld.focus();
						return false;
					}
			}
			fld.value = tval;
			return true;
}




function msgBox(obj,msg,setFocus,clrCtrl)
{
	alert(msg);
	obj.select();
	if(clrCtrl == 1)
		//obj.value="";
	if(setFocus == 1)
		obj.focus();	
}

function FunReplaceSpecialChar(frm,obj,txt) 
{
	var fld=frm[obj];
	var tval = fld.value;
   if ((fld.value=fld.value.replace(/^\s+|\s+$/g,"")) == "")
   {
	  alert(txt+" Required");
	  fld.value=""
	  fld.focus();
      return false;
   }
   return true;
   
   
}



/************************Mobile Validation*****************/


function FunAlphaMobile(frm,obj,txt)
{
			var fld=frm[obj];
			var tval = fld.value;
			
			tval = trimLtRt(tval);
			
			for(i=0;i<tval.length;++i)
			{
				str=tval.charAt(i);		
				
				if(!(( str >="a" && str <= "z")||( str >="A" && str <= "Z")||(str==" ")||(str == "&")||(str >="0" && str <= "9")))	
					{	
						alert("The Symbol (" + str +") is invalid");
						//fld.value="";
						fld.select();
						fld.focus();
						return false;
					}
			}
			fld.value = tval;
			return true;
}


function msgBox(obj,msg,setFocus,clrCtrl)
{
	alert(msg);
	obj.select();
	if(clrCtrl == 1)
		//obj.value="";
	if(setFocus == 1)
		obj.focus();	
}

function FunReplaceSpecialChar(frm,obj,txt) 
{
	var fld=frm[obj];
	var tval = fld.value;
   if ((fld.value=fld.value.replace(/^\s+|\s+$/g,"")) == "")
   {
	  alert(txt+" Required");
	  fld.value=""
	  fld.focus();
      return false;
   }
   return true;
}

