//Check Preceding Zeroes
function CheckAlphabateswithSpace(objID,strControlName)
{
	var alpha=/[a-zA-Z\" "]+/;
	alphaflag=objID.value.match(alpha);	
		if(alphaflag != objID.value)
		{
			alert(strControlName+ ": should be Alphabets only.")
			objID.focus();
 			objID.select();
			return false;
	}
	return true;
}
function CheckPreceZeroes(objID,strControlName)
{
	var str=Ltrim_string(objID.value);
   if (str.substring(0,1)=="0" || objID.value== null)
   {
		alert("Please do not prefix ‘0’ before "+strControlName+" number");
		objID.focus();
		objID.select();
		return false;
	}
	return true;
}
//to set focus on button
function GiveTab(objID)
{
	var valbtn=document.getElementById(objID);
	if(event.keyCode ==13)
	{
//		alert(valbtn);
		valbtn.focus();
	}
}

//to clear text on focus
function ClearText(objID)
{
	var a = eval("document.all['"+objID+"']");
	a.value="";
}

//for only alphabates
function AllowChar()
{
if((event.keyCode >=65 && event.keyCode <=90) || event.keyCode ==8 ||(event.keyCode >=35  && event.keyCode <=41) || event.keyCode ==46)
	event.returnValue=true;
else
	event.returnValue=false;
}

//For LTrim Function
function Ltrim_string(objID)
{			
var j = 0,k=0;
if(objID.length>0)
{
	for(var i=0;i<objID.length && k<objID.length;i++)
	{
		if(objID.charAt(i)==" ")
		{
		j++;
		}
		else
		{
		k = objID.length;
		}
	}
	objID =objID.substring(j,objID.length);
}
	return objID;
}

//returns trim value
function tmstr(objID)
{
var Symbol=objID.value;
var k=0;
var j=0;
for(var i=0;i<Symbol.length && k<Symbol.length;i++)
	{
		if(Symbol.charAt(i)==" ")
		{
		j++;
		}
		else
		{
		k = Symbol.length;
		}
	}
objID.value=Symbol.substring(j,Symbol.length);
}


//Blank Check
function CheckBlank(objID,strControlName)
{
   if (Ltrim_string(objID.value)=="" || objID.value== null)
   {
		alert(strControlName+": Cannot be left blank");
		objID.focus();
		return false;
	}
	return true;
}

//Blank Check New
function ChkBlankNew(objID,strControlName)
	{
	alert(objID.value);
		if(objID.value=="")
		{
			alert(strControlName +" cannot be left blank.");
			objID.focus();
			return false;
		}		
		return true;
	}

//Allow only Numbers in TextBox
function CheckNumeric(objID,strControlName)
	{	
		if (objID.value!="")
		{
			var num=/[0-9]+/
			numflag=objID.value.match(num);	
			if(numflag !=objID.value){
			alert(strControlName+ ": should be Numeric only.")
			objID.focus();
 			objID.select();
			return false;
		}
	}
	return true;
}
//
function CheckAlphabates(objID,strControlName)
{
	var alpha=/[a-zA-Z]+/;
	alphaflag=objID.value.match(alpha);	
		if(alphaflag != objID.value)
		{
			alert(strControlName+ ": should be Alphabets only.")
			objID.focus();
 			objID.select();
			return false;
	}
	return true;
}

//Allow AlphaNumeric characters
function CheckAlphaNumeric(objID,strControlName)
{
	var alpha=/[a-zA-Z0-9]+/;
	alphaflag=objID.value.match(alpha);	
		if(alphaflag != objID.value)
		{
			alert(strControlName+ ": should be AlphaNumeric only.")
			objID.focus();
 			objID.select();
			return false;
	}
	return true;
}

//Do Not Allow special characters
function CheckSpChar(objID,strControlName)
{
var usr=/[a-zA-Z0-9]+/;
	uidflag=objID.value.match(usr);	
	if(uidflag != objID.value){
		alert(strControlName+ ": do not have special characters")
		objID.focus();
 		objID.select();
		return false;
}
	return true;
} 

//Allow only specified special characters
function CheckSpecialChar(objID,strControlName,spstr)
{
var str=objID.value;
var validchars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890" + spstr;
for (var j=0;j<str.length;j++)
if(validchars.indexOf(str.charAt(j)) == -1)
	{
		alert(strControlName+ ": should not have any special characters")
		objID.focus();
 		objID.select();
		return false;
	}
	return true;
} 

//Allow Alphabetes and specified special characters
function CheckAlphaSpecialChar(objID,strControlName,spstr)
{
var str=objID.value;
var validchars = "abcdefghijklmnopqrstuwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" + spstr;

for (var j=0;j<str.length;j++)
if(validchars.indexOf(str.charAt(j)) == -1)
	{
		alert(strControlName+ ": should not have any special characters or numbers")
		objID.focus();
 		objID.select();
		return false;
	}
	return true;
} 

//Allow numeric and special characters
function CheckNumericSpecialChar(objID,strControlName,spstr)
{
	var str=objID.value;
	var validchars = "1234567890" + spstr;

	for (var j=0;j<str.length;j++)
	if(validchars.indexOf(str.charAt(j)) == -1)
	{
		alert(strControlName+ ": should not have any special characters")
		objID.focus();
 		objID.select();
		return false;
	}
	return true;
} 



//Check for Decimal Numbers
function CheckDecimalval(objID,strControlName)
{
Temp =objID.value;
var validchars = "1234567890.";
var iCount=0;

for(var j=0;j<Temp.length && iCount < 2;j++)
	{
		if(validchars.indexOf(Temp.charAt(j)) == -1)
		{
			alert(strControlName+ ": should be Valid");
			objID.focus();
 			objID.select();		
			return false;
		}
		else if(Temp.indexOf(".")<Temp.lastIndexOf("."))
		{
			alert(strControlName+ ": should have Decimal values only");
			objID.focus();
 			objID.select();		
			return false;
		}
	}
	return true;
}

//Check for Decimal Numbers
function CheckDecimal(objID,strControlName)
{	
	var iCount=0;
	Temp =objID.value;	
	if(Temp.length==0)
	{
		Temp = 0;
		return true;
	}
	var validchars = "1234567890.";
	for(var j=0;j<Temp.length && iCount < 2;j++)
	{
		if(validchars.indexOf(Temp.charAt(j)) == -1)
		{
		alert(strControlName+ ": should have Decimal values only");
			objID.focus();
 			objID.select();		
			return false;
		}
		else if(Temp.charAt(j)==".")
			iCount++;
	}
	if(iCount > 1)
	{
		alert(strControlName+ ": should have Decimal values only");
		objID.focus();
 		objID.select();	
		return false;
	}
	return true;
}

//Check for Decimal Numbers of specific position
function CheckDecimalPosition(objID,strControlName)
{	
	var iCount=0;
	Temp = objID.value;	
	if(Temp.length==0)
	{
		Temp = 0;
		return true;
	}
	var validchars = "1234567890.";
	for(var j=0;j<Temp.length && iCount < 2;j++)
	{
		if(validchars.indexOf(Temp.charAt(j)) == -1)
		{
		alert(strControlName+ ": should be in #.00 Decimal format");
			objID.focus();
 			objID.select();		
			return false;
		}
		else if(Temp.charAt(j)==".")
			iCount++;
	}
	if(iCount > 1)
	{
		alert(strControlName+ ": should be in #.00 Decimal format");
		objID.focus();
 		objID.select();	
		return false;
	}
	var sarray = new Array();
	var sElementValue = objID.value;
	
	if(sElementValue != "")
	{
		sarray = sElementValue.split('.');
		if(sarray[0].length == 0)
		{
			objID.value = "0"+sElementValue;
		}
		if(sarray.length>1)
		{
			if(sarray[1].length >2)
			{
				alert(strControlName+ ": should be in #.00 Decimal format");
				objID.focus();
				objID.select();
				return false;
			}
			else if(sarray[1].length == 0)
			{
				objID.value = sElementValue+"00";
			}
			else if(sarray[1].length == 1)
			{
				objID.value = sElementValue+"0";
			}
			
		}
		else
		{
			objID.value = sElementValue+".00";
		}
	}
	return true;
}

//Validation For Single EMail-Id
function CheckMail(objID,strControlName)
{
	var email =/[-a-zA-Z0-9_\.]+@[-a-zA-Z0-9]+\.[-a-zA-Z0-9\.]+/;
	var eflag = objID.value.match(email);
	if(eflag!=objID.value)
	{
		alert(strControlName+ ": should be in proper format")
		objID.focus();
		objID.select();
		return false;
		}
		else if(objID.value.indexOf(".")==0)
		{
		alert(strControlName +": should be valid Email")
		objID.focus();
		objID.select();
		return false;
		}
	return true;
} 

//Validation For Phone No
function CheckPhone(objID,strControlName)
{
		var num=/[0-9\-\+\/\"("\")"\s]+/
		numflag=objID.value.match(num);	
		if (objID.value!="")
		{
		if(numflag != objID.value){
			alert(strControlName+ ":should be valid phone number")
			objID.focus();
 			objID.select();
			return false;
			}
	}
		return true;
} 

function CheckMobile(objID,strControlName)
{
		var num=/[0-9\+]+/
		numflag=objID.value.match(num);	
		if (objID.value!="")
		{
		if(numflag != objID.value){
			alert(strControlName+ ":should be valid Mobile number")
			objID.focus();
 			objID.select();
			return false;
			}
			}
		return true;
} 
//Allow only numbers and specified special characters//used for phone or mobile
function CheckNumSpecialchar(objID,strControlName,spstr)
{
var str=objID.value;
var validchars = "1234567890" + spstr;

for (var j=0;j<str.length;j++)
if(validchars.indexOf(str.charAt(j)) == -1)
	{
		alert(strControlName+ ": should not have any special characters.")
		objID.focus();
 		objID.select();
		return false;
	}
	return true;
} 

/*function CheckMulMail(objID,strControlName)
 { 
 			var email =/[-a-zA-Z0-9_\.]+@[-a-zA-Z0-9]+\.[-a-zA-Z0-9\.]+/;
			var eflag = objID.value.match(email);
			
			if(eflag!=objID.value)
			{
				alert(strControlName +": should have valid Email.")
				objID.focus();
				objID.select();
				return false;
			 }
			return true;
} */

//Check for Multiple EMail-IDs
function CheckMultiMail(objID,sepstr,strControlName)
 { 
var Email=objID.value.split(sepstr);
for(var i=0;i<Email.length;i++)
	{
	var StrEmail=Email[i]
	var email =/[-a-zA-Z0-9_\.]+@[-a-zA-Z0-9]+\.[-a-zA-Z0-9\.]+/;
	var eflag = StrEmail.match(email);
	
	if(eflag!=StrEmail)
		{
			alert(strControlName+": should be valid.")
			objID.focus();
			objID.select();
			return false;
		}
	else if(StrEmail.indexOf(".")==0)
		{
		alert(strControlName+": should be valid.")
		objID.focus();
		objID.select();
		return false;
		}
	}
return true;
}

//Validation For Drop-Down List
function CheckDropDown(objID,strControlName)
{
	   if(objID.options[0].selected=="true" || objID.selectedIndex == 0)
	   {
		alert(strControlName+ " :Select a proper option.");
		objID.focus();
		return false;
	}
	return true;
} 

//Validation fot ListBox
function CheckList(objID,strControlName)
{
	if(objID.selectedValue=="" || objID.selectedIndex<0)
	{
		alert(strControlName+ " :Select a proper option.");
		objID.focus();
		return false;
	}
	return true;
}

//Validation For CheckBox
function CheckChBox(objID,strControlName)
{
	var ie = document.all?true:false;
    var ns = document.layers?true:false;
	var flag=false;
	var val=new Array();
	var a=0;
	if(ie){
		if(!isNaN(objID.length)){
			for(i=0;i<objID.length;i++){
				if(objID[i].checked==true){
					flag=true;
					//val[a]=chk[i].value;
					a++;
				}
			}
		}else{
			if(isNaN(objID.length)){
				if(objID.checked==true){
					flag=true;
					val[a]=objID.value;
				}
			}
		}
		
		if(flag==false){
		alert(strControlName+ ": Select atleast one value.");
			return false;
		}
		return true;			
	}
	if(ns){
		if(objID.length>0){
			for(i=0;i<objID.length;i++){
				if(chk[i].checked==true){
					flag=true;
					val[a]=objID[i];
					a++;
				}
			}
		}else{
			if(objID.length<=0){
				if(objID.checked==true){
					flag=true;
					val[a]=objID.value;
				}
			}
		}
	var i=0;
	for (i=0;i<objID.length;i++)
	{	
			if(objID[i].checked)
		{
			a = a+1;
		}		
}

if(a==0){
			alert(strControlName+ ": Select atleast one value.");
			return false;
		}
	}
} 
//Validation For CheckListBox for Atleast one value
function ChkList(objID,strControlName)
	{
		var a=0;
		var flag=false;
		for (i=0;i<document.forms[0].length;i++)
		{
			if(document.forms[0].elements[i].id==objID+"_"+a)
			{
				if(document.getElementById(objID+"_"+a).checked==true)
				{
					flag=true;
				}
				a++;
			}
		}
		if(flag==false)
			{
				alert(strControlName+ ": Select atleast one value.");
				return false;
			}
			return true;
	}

//Validation For CheckListBox for Atleast Only one value/Radiobuttnlist
function SelectOneList(objID,strControlName)
	{
		var a=0,b=0;
		for (i=0;i<document.forms[0].length;i++)
		{
			if(document.forms[0].elements[i].id==objID+"_"+a)
			{
				if(document.getElementById(objID+"_"+a).checked==true)
				{
					b++;
				}
				a++;
			}
		}
		if(b!=1)
			{
				alert(strControlName+ ": Select any one value.");
				return false;
			}
			return true;
	}
	
//Validation For RadioButton
function CkRdb(objBool,ObjID,strControlName)
{
if (objBool==false)
{
alert(strControlName+ ": Select a proper choice.");
return false;
}
return true;
}

//New Validation For Radio-Button
function CheckRdb(objID,strControlName)
{
var ie = document.all?true:false;
var ns = document.layers?true:false;
var flag=false;
var val=new Array();
var a=0;
	if(ie){
		if(!isNaN(objID.length)){
			for(i=0;i<objID.length;i++){
				if(objID[i].checked==true){
					flag=true;
					//val[a]=chk[i].value;
					a++;
				}
			}
		}else{
			if(isNaN(objID.length)){
				if(objID.checked==true){
					flag=true;
					val[a]=objID.value;
				}
			}
		}
		
		if(flag==false){
		alert(strControlName+ ": Select a proper choice.");
			return false;
		}
		return true;			
	}
	if(ns){
		if(objID.length>0){
			for(i=0;i<objID.length;i++){
				if(objID[i].checked==true){
					flag=true;
					val[a]=objID[i];
					a++;
				}
			}
		}else{
			if(objID.length<=0){
				if(objID.checked==true){
					flag=true;
					val[a]=objID.value;
				}
			}
		}
	var i=0;
	for (i=0;i<objID.length;i++)
		{	
			if(objID[i].checked)
				{
					a = a+1;
				}		
		}
		if(a==0){
				alert(strControlName+ ": Select a proper choice.");
					return false;
				}
			}	
		} 
		
//Validation For Character Limit
function CheckCharLimit(objID,str,strControlName)
{
	charlength=objID.value.length;
		if(charlength < str){
			alert(strControlName+": should have atleast " +str+ " characters.")
			objID.focus();
 			objID.select();
			return false;
	}
	return true;
}

/*function FormatDate(id)
{
		var stordob = document.frm.txtregdate.value;
		regname=/^\d{1}\/\d{1}\/\d{4}$|^\d{2}\/\d{2}\/\d{4}$|^\d{1}\/\d{2}\/\d{4}$|^\d{2}\/\d{1}\/\d{4}$/;
		fnameflag=stordob.match(regname);
		if (fnameflag!=stordob || stordob =="")
			{
			alert ("Please enter valid date in dd/mm/yyyy format")
			document.frm.txtregdate.focus()
			document.frm.txtregdate.select()
			return false;
			}	
		var varsplit = stordob.split("/");		
		var datecal = eval(varsplit[0]);
		var monthcal = eval(varsplit[1]);
		var yearcal = eval(varsplit[2]);	
		
		if (datecal > 31 || datecal <= 0)
			{
			alert ("Please enter valid Date")
			document.frm.txtregdate.focus();
			return false;
			}
		if (monthcal > 12 || monthcal <= 0)
			{
			alert ("Please enter valid Month")
			document.frm.txtregdate.focus();
			return false;
			}
		if (yearcal <= 0)
			{
			alert ("Please enter valid Year")
			document.frm.txtregdate.focus();
			return false;
			}	
		 if  (((yearcal % 4 == 0) && (yearcal % 100 != 0)) || (yearcal % 400 == 0))
    			{
				if(monthcal == 2)
					{
					if(datecal > 29)
						{
						alert("It is a Leap Year, Select a date upto 29th");
						document.frm.txtregdate.focus();
						return false;
						}
					}
				}
    		else
    			{
				if(monthcal == 2)
					{
					if(datecal > 28)
						{
						alert("Select a date upto 28th for February");
						document.frm.txtregdate.focus();
						return false;
						}
					}
	
    			}
	
			if(monthcal == 4 || monthcal == 6 || monthcal == 9 || monthcal == 11)
				{
	   			if(datecal > 30)
	   				{
					alert("Select date upto 30th")
					document.frm.txtregdate.focus();
					return false;
					}	 
				}	

	return true;
}			 

function datechk(dd,mm,yyyy){alert();
	switch(chkdate(dd,mm,yyyy)){
		case 1:
			alert("Invalid From Day");
			return false;
			break;
		case 2:
			alert("Invalid From Month");
			return false;				
			break;
		case 3:
			alert("Invalid From Year");
			return false;
			break;
		case 4:
			alert("This month has only 30 days");
			return false;
			break;
		case 5:
			alert("This is a leap year. Feb has only 29 days");
			return false;
			break;
		case 6:
			alert("This is not a leap year. Feb has only 28 days");
			return false;
			break;
		case 7:
			alert("This year is a leap year. Feb has only 29 days");
			return false;
			break;
		case 8:
			alert("The \"date\" cannot be greater than today\'s date");
			return false;
			break;
	}
	return true;
}

function validate_char(field) { 
 var valid = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" 
 var ok = "yes"; 
 var temp; 
 for (var i=0; i<field.value.length; i++) { 
   temp = "" + field.value.substring(i, i+1); 
   if (valid.indexOf(temp) == "-1") ok = "no"; 
 } 
 if (ok == "no") { 
   alert("Invalid entry!  Only characters Aa-Zz are accepted!"); 
   field.focus(); 
   field.select(); 
 } 
} */




//Validation for userid, where alphanumeric and under score is allowed
function CheckPwd(objID,strControlName){
	var usr=/[a-zA-Z0-9\_]+/;
	uidflag=objID.value.match(usr);	
	if(uidflag != objID.value){
		alert(strControlName+ ": should have valid password.")
		objID.focus();
 		objID.select();
		return false;
	}
	return true;
}

//Validation when for confirm password
function CheckConfPwd(pass, confpass,passname,confname){
	if(confpass.value != pass.value){
		alert(confname + ": should be same as " + passname);			
		confpass.focus();
		confpass.select();
		return false;
	}
	return true;
}

//validation for Address
function CheckAdd(objID,strControlName)
{
	var num=/[a-zA-Z0-9.,/\;\-\"'"\s]+/
	numflag=objID.value.match(num);	
	if(numflag != objID.value){
		alert(strControlName+": should have Valid Address.")
		objID.focus();
 		objID.select();
		return false;
	}
	return true;
}

//validation for WebSite
function CheckWeb(objID,strControlName)
{
	var web =/[w][w][w]\.+[-a-zA-Z0-9]+\.[-a-zA-Z0-9\.]+/gi;
	var eflag = objID.value.match(web);
	if(objID.value!=''){
	if(eflag!=objID.value){
		alert(strControlName+ ": should have valid Address.")
		objID.focus();
		objID.select();
		return false;
		}
	}
	return true;
}

//Fax NO validation
function CheckFaxNo(objID,strControlName)
{
	var num=/[0-9\-\+\/\"("\")"\s]+/
	numflag=objID.value.match(num);
	if(objID.value!="")
	{	
		if(numflag != objID.value){
			alert(strControlName+ ": should have valid fax number.")
			objID.focus();
 			objID.select();
			return false;
		}
	}
	return true;
}

//Check for maximum length of character
function CheckCharLimitMax(objID,strControlName)
{
	charlength=objID.value.length;
	if(objID.value!="")
		{
		if(charlength > strControlName){
			alert("Code should not be greater than "+strControlName+" characters")
			objID.focus();
 			objID.select();
			return false;
		}
	}
	return true;
}

//Check for particular length of characters
function TextBoxLength(objID,NoCharacter,strControlName)
{
	if ((objID.value.length > NoCharacter)||(objID.value.length < NoCharacter))
	{   //x1 = x1.substring(0,maxlength);
		alert(" Exactly " + NoCharacter + " chars allowed including space in " + strControlName +".");
		objID.focus();
		return false;
	}
	return true;
}

function setFocus(ObjID)
{
	ObjID=document.getElementById(ObjID);
	ObjID.focus();
}

//Added by SHILPA on 2 March 2007
function BlankCheck(objID)
{
   if (Ltrim_string(objID.value)=="" || objID.value== null)
   {
		return false;
	}
	else
	{
	return true;
	}
}

// Retail - MutualFund and IPO news popup 
function Opennews(URL)
	{
	window.open(URL,"OpenanAccount","toolbars=no,scrollbars=yes,width=400,height=500,top=0,left=0");
	}


