//Validate on KeyUp
function validateKeyUp(e,act){
if (document.layers)
     Key = "e.which";
else
     Key = "window.event.keyCode";
switch(act) {
   
  
   case "name":re = /[^A-Za-z0-9. ]+/i;break;
   case "alpha":re = /[^a-zA-Z]+/i;break;
   case "other":re = /[^a-zA-Z ]+/i;break;
   case "pan":re = /[^A-Z0-9]+/i;break;
   case "numeric":re = /[^0-9]+/i;break;
   case "alphanumeric":re = /[^A-Za-z0-9 ]+/i;break;
   case "username":re = /[^A-Za-z0-9]+/i;break;
   case "policyno":re = /[^A-Za-z0-9,/#.]+/i;break;
   case "specialAlphanumeric":re = /[^A-Za-z0-9.,()/"$ ]+/i;break;
   case "Floating":re = /[^0-9.]+/i;break; 
   case "Money":re = /[^0-9.]+/i;break; 
   case "Telephone":re = /[^0-9 ,-]+/i;break;
   case "code":re = /[^a-z0-9-]+/i;break;
   case "Address":re= /[^A-Za-z0-9,/#. ]+/i;break;
   case "Name":re =/[^a-zA-Z0-9.]+/i;break;
   case "CompanyName":re= /[^A-Za-z0-9.&(), ]+/i;break;
   case "ContractCode":re = /[^a-z0-9()]+/i;break;
   case "Fax":re = /[^0-9-/,]+/i;break;
   case "VendorName":re = /[^A-Za-z0-9-&/.]+/i;break;
   case "registration":re = /[^a-z0-9-()&/]+/i;break;
   case "contactperson":re = /[^a-z0-9.]+/i;break;
   case "currency":re = /[^a-z0-9$.]+/i;break;
   case "remarks":re= /[^a-z0-9A-Z.: ]+/i;break;
   case "InvoiceNo":re= /[^a-z0-9A-Z/]+/i;break;
   case "ValidCode":re= /[^a-z0-9A-Z&.()-]+/i;break;
   case "SubCategoryCode":re= /[^a-zA-Z-]+/i;break;
   case "CustmerName":re= /[^a-z0-9A-Z&.()-/]+/i;break;
   case "ClientMst":re= /[^a-z0-9A-Z&.,()/"]+/i;break;
   case "AssesseeAddress":re= /[^A-Za-z0-9,/&()."]+/i;break;
   case "DtlsOfBank":re=  /[^a-zA-Z,]+/i;break;
   case "GLCode":re = /[^a-z0-9A-Z,.()/]+/i;break;
   case "PremisesCode":re =/[^a-z0-9A-Z&,-]+/i;break;
   case "date":re = /[^0-9/]+/i;break;
   case "url":re =/^([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,6}$/i;break;
   }
   if(re.test(e.value))
   {
        e.value = e.value.replace(re, "")
        e.focus()
   }
}    



//Validate on KeyPress
function validateKeys(e,act){
if (document.layers)
     Key = "e.which";
else
     Key = "window.event.keyCode";
switch(act) {
   case "name":re = /[^A-Za-z0-9.]+/i;break;
   case "alpha":re = /[^a-zA-Z]+/i;break;
   case "pan":re = /[^A-Z0-9]+/i;break;
   case "numeric":re = /[^0-9]+/i;break;
   case "alphanumeric":re = /[^A-Za-z0-9]+/i;break;
   case "specialAlphanumeric":re = /[^A-Za-z0-9.,()/"$ ]+/i;break;
   case "Floating":re = /[^0-9.]+/i;break; 
   case "Money":re = /[^0-9.,]+/i;break; 
   case "Telephone":re = /[^0-9 ,-]+/i;break;
   case "code":re = /[^a-z0-9-]+/i;break;
   case "Address":re= /[^A-Za-z0-9,/#.]+/i;break;
   case "Name":re =/[^a-zA-Z0-9.]+/i;break;
   case "CompanyName":re= /[^A-Za-z0-9.&(),]+/i;break;
   case "ContractCode":re = /[^a-z0-9()]+/i;break;
   case "Fax":re = /[^0-9-/,]+/i;break;
   case "VendorName":re = /[^A-Za-z0-9-&/.]+/i;break;
   case "registration":re = /[^a-z0-9-()&/]+/i;break;
   case "contactperson":re = /[^a-z0-9.]+/i;break;
   case "currency":re = /[^a-z0-9$.]+/i;break;
   case "remarks":re= /[^a-z0-9A-Z.:]+/i;break;
   case "InvoiceNo":re= /[^a-z0-9A-Z/]+/i;break;
   case "ValidCode":re= /[^a-z0-9A-Z&.()-]+/i;break;
   case "SubCategoryCode":re= /[^a-zA-Z-]+/i;break;
   case "CustmerName":re= /[^a-z0-9A-Z&.()-/]+/i;break;
   case "ClientMst":re= /[^a-z0-9A-Z&.,()/"]+/i;break;
   case "AssesseeAddress":re= /[^A-Za-z0-9,/&()."]+/i;break;
   case "DtlsOfBank":re=  /[^a-zA-Z,]+/i;break;
   case "GLCode":re = /[^a-z0-9A-Z,.()/]+/i;break;
   case "PremisesCode":re =/[^a-z0-9A-Z&,-]+/i;break;
   case "date":re =/[^0-9/]+/i;break;
   }
if(re.test(eval("String.fromCharCode("+Key+")")))    
    if((eval(Key))!=32)
    {
    eval(Key+"=null")
   }
}

function ChangeUpper(obj)
{
obj.value = obj.value.toUpperCase();
}

//Upload Image Extension Validation
var hash = {  
'.jpg'  : 1,  
'.jpeg' : 1,
'.gif' : 1
};

function check_extension(file) 
{   
var filename = file.value;
filename = filename.toLowerCase();
var re = /\..+$/;      
var ext = filename.match(re);      
    if (hash[ext]) 
    {     
        return true;      
    } 
    else 
    {        
        alert("Invalid filename, please select another file");        
        file.value = "";
        return false;      
    }
}

//Mobile Number Start with 9 on key press.
function isValidMobileNo(event)
{

    if (event.keyCode>=48 && event.keyCode<=57)
    {
        return true;
    }
    else
    {
        return false;
    }
 
}
//Mobile Number Start with 9 on key up to avoid wrong data copy paste
function isValidMobileNoKeyUp(obj)
{


   var strNum = '0123456789';
   var strVal="";
   
    for(var temp=0;temp<obj.value.length;temp++)
    {
        if(strNum.indexOf(obj.value.charAt(temp))==-1)
        {
          
        }
        else
        {
            if(strVal == "")
            {
                 strVal  = obj.value.charAt(temp);
            }
            else
            {
                strVal  = strVal + obj.value.charAt(temp);
            }
        
        }
    }
    obj.value = strVal;
        if((obj.value.charAt(0) == '9') || (obj.value.charAt(0) == '8') || (obj.value.charAt(0) == '7'))
            {
                
                return true;
            }
            else
            {
                obj.value = "";
                return false;
            }
            
         
}
//Mobile Number Start with 9 on key up to avoid wrong data copy paste
function isValidMobileNoKeyUpNew(obj,event)
{

if(event.keyCode != 37 && event.keyCode !=39)
    {
   var strNum = '0123456789';
   var strVal="";
   
    for(var temp=0;temp<obj.value.length;temp++)
    {
        if(strNum.indexOf(obj.value.charAt(temp))==-1)
        {
          
        }
        else
        {
            if(strVal == "")
            {
                 strVal  = obj.value.charAt(temp);
            }
            else
            {
                strVal  = strVal + obj.value.charAt(temp);
            }
        
        }
    }
    obj.value = strVal;
        if(obj.value.charAt(0) == '9')
            {
                
                return true;
            }
            else
            {
                obj.value = "";
                return false;
            }
            
        }    
}
//TOLL FREE Number Start with '1', '8'
function isValidTollFreeNoKeyUp(obj)
{
   var strNum = '0123456789';
   var strVal="";
   
    for(var temp=0;temp<obj.value.length;temp++)
    {
        if(strNum.indexOf(obj.value.charAt(temp))==-1)
        {
          
        }
        else
        {
            if(strVal == "")
            {
                 strVal  = obj.value.charAt(temp);
            }
            else
            {
                strVal  = strVal + obj.value.charAt(temp);
            }
        
        }
    }
    obj.value = strVal;
        if(obj.value.charAt(0) == '1')
            {
                
                return true;
            }
            else
            {
                obj.value = "";
                return false;
            }
            
    obj.value = strVal;
        if(obj.value.charAt(1) == '8')
            {
                
                return true;
            }
            else
            {
                obj.value = "";
                return false;
            }        
}

//Std Start with 0 on key press.
function isValidSTD(event)
{
    if (event.keyCode>=48 && event.keyCode<=57)
    {
        return true;
    }
    else
    {
        return false;
    }
 
}
//std Code Start with 0 on key up to avoid wrong data copy paste
function isValidSTDKeyUp(obj)
{
   var strNum = '0123456789';
   var strVal="";
   
    for(var temp=0;temp<obj.value.length;temp++)
    {
        if(strNum.indexOf(obj.value.charAt(temp))==-1)
        {
          
        }
        else
        {
            if(strVal == "")
            {
                 strVal  = obj.value.charAt(temp);
            }
            else
            {
                strVal  = strVal + obj.value.charAt(temp);
            }
        
        }
    }
    obj.value = strVal;
        if(obj.value.charAt(0) == '0')
            {
                
                return true;
            }
            else
            {
                obj.value = "";
                return false;
            }
}
     



//Landline num should not Start with 0 on key press.
function isValidLandLine(event)
{
    if (event.keyCode>=48 && event.keyCode<=57) 
    {
        
        return true;
    }
    else
    {
        
        return false;
    }
 
}
//Landline num should not Start with 0 on key up to avoid wrong data copy paste
function isValidLanlineKeyUp(obj)
{
   var strNum = '0123456789';
   var strVal="";
   
    for(var temp=0;temp<obj.value.length;temp++)
    {
        if(strNum.indexOf(obj.value.charAt(temp))==-1)
        {
          
        }
        else
        {
            if(strVal == "")
            {
                 strVal  = obj.value.charAt(temp);
            }
            else
            {
                strVal  = strVal + obj.value.charAt(temp);
            }
        
        }
    }
    obj.value = strVal;
        if(obj.value.charAt(0) == '0')
            {
                obj.value = "";
                return false;
            }
            else
            {
                
                return false;
            }
}




     
//Start For dateTime in format DD/MM/YYYY
     
var dtCh= "/";
var minYear=1900;
var maxYear=2050;

function isInteger(s){
	var i;
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    return true;
}

function stripCharsInBag(s, bag){
	var i;
    var returnString = "";
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function daysInFebruary (year)
{
    return (((year % 4 == 0) && ((!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}

function DaysArray(n) {
	for (var i = 1; i <= n; i++) {
		this[i] = 31
		if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
		if (i==2) {this[i] = 29}
   } 
   return this
}

function isDate(dt){

if(trim(dt.value) != "" && trim(dt.value) != "DD/MM/YYYY")
    {
    var dtStr = dt.value;
    var dtch='/';

	var daysInMonth = DaysArray(12)
	var pos1=dtStr.indexOf(dtCh)
	var pos2=dtStr.indexOf(dtCh,pos1+1)
	var strDay=dtStr.substring(0,pos1)
	var strMonth=dtStr.substring(pos1+1,pos2)

	var strYear=dtStr.substring(pos2+1)
	strYr=strYear
	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
	for (var i = 1; i <= 3; i++) {
		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
	}
	month=parseInt(strMonth)
	day=parseInt(strDay)
	year=parseInt(strYr)
	if (pos1==-1 || pos2==-1){
		alert("The date format should be : DD/MM/YYYY")
		return false
	}
	if (strMonth.length<1 || month<1 || month>12){
		alert("Please enter a valid month")
		return false
	}
	if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
		alert("Please enter a valid day")
		return false
	}
	if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){
		alert("Please enter a valid 4 digit year between "+minYear+" and "+maxYear)
		return false
	}
	if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){
		alert("Please enter a valid date")
		return false
	}

	
 }	
return true
}

function  getYears(date){
    var today, oldDate, ageYears
    today=new Date();
    oldDate= new Date(date)

    ageYears = today.getFullYear() - oldDate.getFullYear()

    if (today.getMonth() < oldDate.getMonth())    
        ageYears = ageYears -1
    else if (today.getMonth() == oldDate.getMonth())    
    {
        if (today.getDate() < oldDate.getDate())    
            ageYears = ageYears -1
    }

    return ageYears;
}


function  getYears(date,serverDate){
    var today, oldDate, ageYears
    today=new Date(serverDate);
    oldDate= new Date(date)

    ageYears = today.getFullYear() - oldDate.getFullYear()

    if (today.getMonth() < oldDate.getMonth())    
        ageYears = ageYears -1
    else if (today.getMonth() == oldDate.getMonth())    
    {
        if (today.getDate() < oldDate.getDate())    
            ageYears = ageYears -1
    }

    return ageYears;
}
//End For dateTime in format DD/MM/YYYY


//Function to Restrict those three "',;,~" characters on keypress

function OnPressValidate(event)
    {
     
        if (event.keyCode==39 || event.keyCode==126 || event.keyCode==59)
        {
            return false;
        }     
          
         else
         {
            return true;
         }   
         
         
         

    }  

//Function to Restrict those three "',;,~" characters on Save

function OnSaveValidateSpecialChars(obj)
    {
       
      var objLen = obj.value.length;
      for(var i =0;i<objLen;i++)
      {
        var Char = obj.value.charAt(i);
        if (Char=="'" || Char==";" || Char=="~")
        {
            alert("There three ',;,~ characters are not allowed. Please enter valid characters.");
            obj.focus();
            return false;
        }     
          

      }
         
         
         

    }  
    
//Function for Email validations  
//str email value
//str1 Message to be displayed  
function echeck(str,str1) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		
		if (str.indexOf(at)==-1){
		   alert(str1);
		   return false;
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert(str1);
		   return false;
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert(str1);
		    return false;
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert(str1);
		    return false;
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert(str1);
		    return false;
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert(str1);
		    return false;
		 }
		 
		 
		 if (str.indexOf(" ")!=-1){
		    alert(str1);
		    return false;
		 }
		  if (str.indexOf(dot)+1 == str.length){
		    alert(str1);
		    return false;
		 }

 		 return true;					
	}    
	
	
//Functon to validate Decimal Places on key up	
//Obj : object
//numCharBeforeDec : total number of characters allowed before decimal
//numCharAfterDec : total number of characters allowed after decimal
function toCheckOneDecimal(obj,numCharBeforeDec,numCharAfterDec)
{
    //
     var strNum = '0123456789.';
   var strVal="";
   
    for(var temp=0;temp<obj.value.length;temp++)
    {
        if(strNum.indexOf(obj.value.charAt(temp))==-1)
        {
          
        }
        else
        {
            if(strVal == "")
            {
                 strVal  = obj.value.charAt(temp);
            }
            else
            {
                strVal  = strVal + obj.value.charAt(temp);
            }
        
        }
    }
    obj.value = strVal;
     if(trim(obj.value) == '.')
     {
     obj.value = "";
     }


      var nObjVal = obj.value;
      
       var arrObjVal = nObjVal.split('.');

      var strValBeforeDec = "";
      var strValAfterDec = "";
      
        if(arrObjVal.length == 2)
        {
       
            if(arrObjVal[0].length > eval(numCharBeforeDec))
                {
                    for(var i=0;i < numCharBeforeDec;i++)
                    {
                         if(strValBeforeDec == "")
                         {
                            strValBeforeDec =  arrObjVal[0].charAt(i);;
                         }
                         else
                         {
                            strValBeforeDec = strValBeforeDec + arrObjVal[0].charAt(i);;
                         }
                    }
                }
            else
            {
                strValBeforeDec =  arrObjVal[0];
            
            }    
           
            if(arrObjVal[1].length > eval(numCharAfterDec))
                {
                    for(var i=0;i < numCharAfterDec;i++)
                    {
                         if(strValAfterDec=="")
                         {
                            strValAfterDec = arrObjVal[1].charAt(i);;
                         }
                         else
                         {
                            strValAfterDec = strValAfterDec + arrObjVal[1].charAt(i);;
                         }
                    }
                }  
            else
            {
                strValAfterDec =  arrObjVal[1];
            
            }                         
            var strVal = strValBeforeDec + "." + strValAfterDec;
     
           obj.value = strVal;
           
   }
   else
   {
        for(var i=0;i < numCharBeforeDec;i++)
                    {
                         if(strValBeforeDec=="")
                         {
                            strValBeforeDec = trim(obj.value).charAt(i);;
                         }
                         else
                         {
                            strValBeforeDec = strValBeforeDec +  trim(obj.value).charAt(i);;
                         }
                    }
                     var strVal = strValBeforeDec;
     
           obj.value = strVal;
   }
  
}
//Functon to validate Decimal Places on Save
//Obj : object
//numCharBeforeDec : total number of characters allowed before decimal
//numCharAfterDec : total number of characters allowed after decimal
//event  : that is whict key is Pressed
function DecimalValidate(obj,numCharBeforeDec,numCharAfterDec,event)
    {
    
    if (event.keyCode>=48 && event.keyCode<=57 || event.keyCode==46)
    {
        var arrObjVal = obj.value.split('.');
        var objBefireDecLen = trim(arrObjVal[0]).length+1;
        
        if(eval(objBefireDecLen) > eval(numCharBeforeDec))
        {
         if(arrObjVal.length == 1)
            {
                if(event.keyCode != 46)
                {
              
                    return false;
                 }
             }   
            
        }
       if(arrObjVal[0]!=null)
        {
            var objBeforeDecLen1 = trim(arrObjVal[0]).length;
            if(eval(objBeforeDecLen1) > eval(numCharBeforeDec))
            {
                    return false;
            }
            
        }  
        if(arrObjVal[1]!=null)
        {
            var objAfterDecLen = trim(arrObjVal[1]).length;
            if(eval(objAfterDecLen) >= eval(numCharAfterDec))
            {
                    return false;
            }
        }  
        
        if(eval(objBefireDecLen) == eval(numCharBeforeDec))
        {
          
            if(arrObjVal[1]!=null)
            {
                var objAfterDecLen = trim(arrObjVal[1]).length;
                if(eval(objAfterDecLen) >= eval(numCharAfterDec))
                {
                        return false;
                }
            }   
        }
       
      
       }
        else
        {
            return false;   
        }     
    }


function trim(string)
{
    if(string != null)
    {
	return string.replace(/^\s*|\s*$/g,"");
	}
	else
	{
	    return string
	}
} 

//Functon to restrict entry in Multiple entries without entering data in last row.
//Limitation function is valid on multiple enteries with two or less than two textBoxes
//obj : GridView object 
//obj1: name of textbox Used
//strMessage1 :Error message to be displayed for obj1.
//obj2: name of textbox Used (Optional)
//strMessage1 : Error message to be displayed for obj2.(Optional)
 function OnAddMultipleEnteries(obj,obj1,strMessage1,obj2,strMessage2)
    {
    var temp;
    var c = obj.rows.length
     if(eval(c)!=0)
     {
         temp = c;
     }
     else
     {
         temp = obj.rows.length;
     }
    var strId = obj.id + '_ctl'
    temp=eval(temp)+1;
    var i = temp;
    if(temp<9)
    {
       i = "0" + i;
    }
    var strStdId = strId + i + "_" + obj1;
    var strNumId = strId + i + "_" + obj2;
    if(document.getElementById(strStdId)!=null)
    {
    if(trim(document.getElementById(strStdId).value) == "" || trim(document.getElementById(strStdId).value) == "STD")
    {
        alert(strMessage1);
        document.getElementById(strStdId).focus();
        return false;
    }
    
    }

    if(document.getElementById(strNumId)!=null)
    {
    if(trim(document.getElementById(strNumId).value) == "")
    {
        alert(strMessage2);
        document.getElementById(strNumId).focus();
        return false;
    }
    }
   
    }  
    
 //Fumction to validate Pan Number on keyUp   
 function onKeyUpPANNo(obj)
     {
    
         if(trim(obj.value) != "")     
        {
        var PanNum  = trim(obj.value);
       
       
        var strNum = "1234567890";
         var strAlpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
        var flag = 0;
        var flag1 = 0;
        var flag2 = 0;
        var i = obj.value.length-1;
       
            var index = strAlpha.indexOf(PanNum.charAt(i));
            if(i==0 || i==1 || i==2 || i==3 || i==4 ||  i==9)
            {
                if(eval(index) == -1)
                    {
                        
                        obj.focus();
                        obj.value = obj.value.substring(0,i);
                        
                    }
            }
      
        if(i==5 || i==6 || i==7 || i==8)
           {
            var index = strNum.indexOf(PanNum.charAt(i));
            if(eval(index) == -1)
                {
                     
                        obj.focus();
                        obj.value = obj.value.substring(0,i);
                     
                }
            
            }
      }
          
     }         
     
 //Fumction to validate Pan Number on Save     
function onSavePANNo(obj)
{
     var strPan = obj.value;
     var PanLen = strPan.length;
     var strAlpha = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
     var strNum = '1234567890';
     for(var temp=0;temp<5;temp++)
        {
            var index = strAlpha.indexOf(trim(strPan).charAt(temp));
            if(index == -1)
            {
                
                return false;
            }
        }
       for(var temp=5;temp<9;temp++)
        {
            var index = strNum.indexOf(trim(strPan).charAt(temp));
            if(index == -1)
            {
              
                return false;
            }
        }   
        var index = strAlpha.indexOf(trim(strPan).charAt(9));
            if(index == -1)
            {
                return false;
            }
}  

 //Start of Functions to validate Password on save
 //Vaildation Check on Password : Password Must Contain all three alpha,numeric,atleast on special characters except ',~,;
 //Obj : Control Object
 //strControl : Caption for Control
  function ToChkNumeric(obj,strControl)
    {
        var strNum = "1234567890";
        var flag = 0;
        for(var i=0;i<trim(obj.value).length;i++)
        {
            var index = strNum.indexOf(trim(obj.value).charAt(i));
            if(eval(index) == -1)
                {
                    flag = 1;
                    break;
                }
            
        }
        if(flag == 0)
        {
          
          alert(strControl + " will always be alphanumeric with one special character. Please Enter Valid " + strControl + ".");
               
           obj.focus();
            return false;
        }
        return true;
    }
    
    function ToChkAlpha( obj, strControl)
    {
        var strAlpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
        var flag = 0;
        for(var i=0;i<trim(obj.value).length;i++)
        {
            var index = strAlpha.indexOf(trim(obj.value.toUpperCase()).charAt(i));
            if(eval(index) == -1)
                {
                    flag = 1;
                    break;
                }
            
        }
        if(flag == 0)
        {
          
          alert(strControl + " must contain alphanumeric and at least one special character.Please enter valid " + strControl + ".");
               
           obj.focus();
            return false;
        }
        return true;
    }
   function ToChkSpecialChar( obj, strControl)
    {
        var strAlpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
        var flag = 0;
        for(var i=0;i<trim(obj.value).length;i++)
        {
            var index = strAlpha.indexOf(trim(obj.value.toUpperCase()).charAt(i));
            if(eval(index) == -1)
                {
                    flag = 1;
                    break;
                }
            
        }
        if(flag == 0)
        {
          
          alert(strControl + " must contain alphanumeric and at least one special character.Please enter valid " + strControl + ".");
               
           obj.focus();
            return false;
        }
        return true;
    }
    
   function ToChkAllTypeChar( obj, strControl)
    {
        var strAlphaNum = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
         var strNum = "0123456789";
          var strAlpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
        var flag1 = 0;
         var flag2 = 0;
          var flag3 = 0;
        for(var i=0;i<trim(obj.value).length;i++)
        {
            var index = strAlphaNum.indexOf(trim(obj.value.toUpperCase()).charAt(i));
            if(eval(index) == -1)
                {
                    flag1 = 1;
                    break;
                }
        }
       for(var i=0;i<trim(obj.value).length;i++)
        {
          
            var index = strAlpha.indexOf(trim(obj.value.toUpperCase()).charAt(i));
            if(eval(index) != -1)
                {
                    flag2 = 1;
                    break;
                }
                
        }  
    for(var i=0;i<trim(obj.value).length;i++)
        {
           
            var index = strNum.indexOf(trim(obj.value).charAt(i));
            if(eval(index) != -1)
                {
                    flag3 = 1;
                    break;
                }
                
        }   
    
        if(flag1 == 1 && flag2 == 1 && flag3 == 1)
        {
        }
        else
        {
          alert(strControl + " must contain alphanumeric and at least one special character.Please enter valid " + strControl + ".");
           obj.focus();
            return false;
        }
        return true;
    }
//End of Functions to validate Password on save    

// JavaScript Document//Common Js for all Pages goes here
function isBlank(obj,displayName)
{
	var str="";
	str=obj.value;
	var len=str.length;
	var i;
	for(i=0;i<len;++i)
	{
		if(str.charAt(i)!=" ")
		{
			return false;
		}
	}
	alert(displayName+" cannot be left blank");
	obj.focus();
	return true;
}




/*
Ultimate Age calculator script- By Deepak Kashyap
*/

var one_day=1000*60*60*24
var one_month=1000*60*60*24*30
var one_year=1000*60*60*24*30*12

function GetAge(DateOfBirth)
   {
        
        var DOB  = DateOfBirth.value;
	    var arrDOB = DOB.toString().split("/");
    	
	    var day = arrDOB[0].toString();
	    var mon = arrDOB[1].toString();
	    var yr  = arrDOB[2].toString();

        today=new Date()
        var pastdate=new Date(yr, mon-1, day)

        finalunit=one_year
        decimals=1
        
        yearspast=today.getFullYear()-yr-1
        tail=(today.getMonth()>mon-1 || today.getMonth()==mon-1 && today.getDate()>=day)? 1 : 0
        pastdate.setFullYear(today.getFullYear())
        pastdate2=new Date(today.getFullYear()-1, mon-1, day)
        tail=(tail==1)? tail+Math.floor((today.getTime()-pastdate.getTime())/(finalunit)*decimals)/decimals : Math.floor((today.getTime()-pastdate2.getTime())/(finalunit)*decimals)/decimals
        
        return (yearspast+tail);
       
    }
    
    
function GetAge(DateOfBirth,ServerDate)
   {
        
        var DOB  = DateOfBirth.value;
	    var arrDOB = DOB.toString().split("/");
    	
	    var day = arrDOB[0].toString();
	    var mon = arrDOB[1].toString();
	    var yr  = arrDOB[2].toString();

        today=new Date(ServerDate)
        var pastdate=new Date(yr, mon-1, day)

        finalunit=one_year
        decimals=1
        
        yearspast=today.getFullYear()-yr-1
        tail=(today.getMonth()>mon-1 || today.getMonth()==mon-1 && today.getDate()>=day)? 1 : 0
        pastdate.setFullYear(today.getFullYear())
        pastdate2=new Date(today.getFullYear()-1, mon-1, day)
        tail=(tail==1)? tail+Math.floor((today.getTime()-pastdate.getTime())/(finalunit)*decimals)/decimals : Math.floor((today.getTime()-pastdate2.getTime())/(finalunit)*decimals)/decimals
        
        return (yearspast+tail);
       
    }
    
    
    
 //Validation for Date to check Greater and lesser
function ValidateDate(objFrm,objTo)
 {
    //Checking if Valid Effective From Date 
     if(ObjectIsBlank(objFrm) == false)
     {
      if (isValidDate(objFrm.value,"Effective Date From")== false) 
        {
            return false;
        }
     }
     //Checking if Valid Effective To Date 
     if(ObjectIsBlank(objTo) == false)
     {
        if (isValidDate(objTo.value,"Effective Date To")== false) 
        {
            return false;
        }
     }
     var EffectiveFromDate = new Date(objFrm.value);
     var EffectiveToDate = new Date(objTo.value);
     if(EffectiveFromDate >= EffectiveToDate)
     {
         alert("Effective Date To cannot be less than Effective Date From.");
         return false;
     }
 }
 
 
 //Validation for Date to check PaySlip Date Greater and Lesser
function ValidatePaySlipDate(objFrm,objTo)
 {
    //Checking if Valid Effective From Date 
     if(ObjectIsBlank(objFrm) == false)
     {
      if (isValidDate(objFrm.value,"Payslip Date From")== false)
        {
            return false;
        }
     }
     //Checking if Valid Effective To Date 
     if(ObjectIsBlank(objTo) == false)
     {
        if (isValidDate(objTo.value,"Payslip Date To")== false)
        {
            return false;
        }
     }
     var EffectiveFromDate = new Date(objFrm.value);
     var EffectiveToDate = new Date(objTo.value);
     if(EffectiveFromDate >= EffectiveToDate)
     {
         alert("Payslip Date To cannot be less than Payslip Date From.");
         return false;
     }
 }
 
 
 
 //Function for Validate Address Collection
function ValidateAdressCollection(objAddress1,objAddress2,objAddress3,objState,objCity,objPin)
{
   if(objAddress1.value == "")
        if(objAddress2.value == "")
            if(objAddress3.value == "")
            {
            alert("Address can not be left Blank.");
            objAddress1.focus();
            return false;
            }
    if(objState != null)
    if(objState.options[0].selected == true)
    {
    alert("Select valid State Name!");
    objState.focus();
    return false;
    }
    
    if(objCity != null)
    if(objCity.options[0].selected == true)
    {
    alert("Select valid City Name!");
    objCity.focus();
    return false;
    }
    
    if(objPin.value == "")
    {
    alert("Pin Code not be left Blank.");
    objPin.focus();
    return false;
    }

}          

//function to validate page Numbers 
function OnPressValidatePageNum(obj)
{


 var strNum = "1234567890"
 var objLen = trim(obj.value).length;
 var strObj = trim(obj.value).split('');
 var finalStr = "";
 for(var temp=0;temp<objLen;temp++)
 {
    if(strNum.indexOf(strObj[temp]) == -1)
    {
        finalStr = finalStr;
    }
    else
    {
        if(finalStr=="")
        {
            finalStr = strObj[temp];
        }
        else
        {
         finalStr = finalStr + strObj[temp];
        }
    }
 }
 obj.value = finalStr;
 if(eval(obj.value) == 0)
 {
    obj.value = "1";
 }
 
  

}   


//Function to check Maxlength
//obj - object
//maxlength : maximum Number of characters allowed
function toCheckLength(obj,maxlength)
{
    if(obj!=null)
    {
        if(trim(obj.value).length >= eval(maxlength))
        {
            alert("Length can not exceed more than " + maxlength + " number of characters.");
            obj.focus();
            return false;
        }
    }
}


//Function to check Maxlength
//obj - object
//maxlength : maximum Number of characters allowed
function toCheckLengthOnSave(obj,maxlength,Controlname,divId,objHdn)
{
    if(divId==null)
    {
        if(obj!=null)
        {
            if(trim(obj.value).length > eval(maxlength))
            {
                alert(Controlname + " can not exceed more than " + maxlength + " number of characters.");
                obj.focus();
                return false;
            }
        }
    }
    else
    {
        if(obj!=null)
        {
            objdivId = document.getElementById(divId);
            if(trim(obj.value).length > eval(maxlength))
            {
                msg = Controlname + " can not exceed more than " + maxlength + " number of characters.";
                if(IsAddSpan(objdivId,msg))
                {if(objHdn.value == "-1")objHdn.value = "0";
                    objHdn.value = parseInt(objHdn.value) + 1;
                    return true;
                }
             }   
        
        }
    }
}
//Function to check Maxlength
//obj - object
//maxlength : maximum Number of characters allowed
function toCheckLengthOnSaveMinChar(obj,maxlength)
{
   
    if(trim(obj.value).length < eval(maxlength))
    {
        obj.focus();
        return false;
    }
     
   
}
//Function to validate from & two date comparisons
//if false then give message From date can not be greater tha 
function ValidateFromToDates(objEffDateFrm,objEffDateTo)
{
 if( (trim(objEffDateFrm.value) != "") && (trim(objEffDateTo.value) != ""))
 {
        if( (trim(objEffDateFrm.value) != "DD/MM/YYYY") && (trim(objEffDateTo.value) != "DD/MM/YYYY"))
        {
        
             var strFromdate = objEffDateFrm.value.split('/');
           
             
             var strTodate = objEffDateTo.value.split('/');
 
             if(eval(strTodate[2]) < eval(strFromdate[2]))
                {
                    
                    //Commented By Deepak
                    //objEffDateFrm.focus();
                    return false;
                }
                else if(eval(strTodate[1]) < eval(strFromdate[1]) && eval(strTodate[2]) == eval(strFromdate[2]))
                {
                   
                   //objEffDateFrm.focus();
                    return false;
                }
                else if(eval(strTodate[0]) < eval(strFromdate[0]) && eval(strTodate[1]) == eval(strFromdate[1]) && eval(strTodate[2]) == eval(strFromdate[2]))
                {
                    
                   //objEffDateFrm.focus();
                    return false;
                }
         
          
        } 
    }
  
}

// Function to Validate From & To Date
// If false then give message From date can not be greater than
function ValidateLessDate(objEffDateFrm,objEffDateTo)
{
 if( (trim(objEffDateFrm.value) != "") && (trim(objEffDateTo.value) != ""))
 {
        if( (trim(objEffDateFrm.value) != "DD/MM/YYYY") && (trim(objEffDateTo.value) != "DD/MM/YYYY"))
        {
             var strFromdate = objEffDateFrm.value.split('/');             
             var strTodate = objEffDateTo.value.split('/'); 
             if(eval(strTodate[2]) > eval(strFromdate[2]))
                {                    
                    return true;
                }
                else if(eval(strTodate[1]) > eval(strFromdate[1]) && eval(strTodate[2]) == eval(strFromdate[2]))
                {                    
                    return false;
                }
                else if(eval(strTodate[0]) > eval(strFromdate[0]) && eval(strTodate[1]) == eval(strFromdate[1]) && eval(strTodate[2]) == eval(strFromdate[2]))
                {  
                    return false;
                }
        } 
    }
  
}


function ChkPassword(objtxtPassword)
{
            var retVal = ToChkNumeric(objtxtPassword,"Password");
            
            if(retVal==false)
            {
                return false;            
            }
            var retVal1 = ToChkAlpha(objtxtPassword,"Password");
             
            if(retVal1==false)
            {
                return false;            
            }
            var retVal2 = ToChkSpecialChar(objtxtPassword,"Password");
           
            if(retVal2==false)
            {
                return false;            
            }
             var retVal3 = ToChkAllTypeChar(objtxtPassword,"Password");
           
            if(retVal3==false)
            {
                return false;            
            }
            if(OnSaveValidateSpecialChars(objtxtPassword)==false)
             {
             
                return false;
             }   
}
//funvction to find num of days between two dates on save
function days_between(date1, date2) {
    var retVal = "";
    // The number of milliseconds in one day
    if(trim(date1)!="" && trim(date2)!="")
    {
     if(trim(date1)!="DD/MM/YYYY" && trim(date2)!="DD/MM/YYYY")
        {
        var ONE_DAY = 1000 * 60 * 60 * 24

        // Convert both dates to milliseconds
        var arrDate1 = date1.split('/');
        
        var arrDate2 = date2.split('/');
        
        
        var dtDATE1 = new Date(arrDate1[2], arrDate1[1]-1, arrDate1[1])
        var dtDATE2 = new Date(arrDate2[2], arrDate2[1]-1, arrDate2[1])
        
        var date1_ms = dtDATE1.getTime()
        var date2_ms = dtDATE2.getTime()

        // Calculate the difference in milliseconds
        var difference_ms = Math.abs(date1_ms - date2_ms)
        
        // Convert back to days and return
        retVal =  Math.round(difference_ms/ONE_DAY)
        }
    }
    return retVal;
}

///function to check whether minimum no of characters has been entered or not
function toCheckAtleastNumOfChars(obj,MaxOrMinNum,msg,DivId,strHdn)
{
 var objHdn = document.getElementById(strHdn);
       if(trim(obj.value)!="")
       {
        if(trim(obj.value).length < eval(MaxOrMinNum))
        {
            
            if(DivId ==null)
            {
                alert(msg);
                 return false;
               
                
            }
            else
            {
                    var divobj = document.getElementById(DivId);
                   
                   
                     if(IsAddSpan(divobj,msg))
                        {if(objHdn.value == "-1")objHdn.value = "0";
                        objHdn.value = parseInt(objHdn.value) + 1;
                        return true;
                        }
            }
            
            return false;
        }
        else
        {
              if(DivId !=null)
              {
                
              var divobj = document.getElementById(DivId);
               if(IsRemoveSpan(divobj))
                {
                objHdn.value = parseInt(objHdn.value) - 1;
                }
                return false;
              }
           
        }
        }
       
}


function OnFocusOfDate(obj)
{
    var str="";
	str=obj.value;
	var regAtoZ = new RegExp('[A-Z]');
	var len=str.length;
	var i;
	for(i=0;i<len;++i)
	{
		if(str.charAt(i).toString().match(regAtoZ))
		{
		    obj.value = '';
			return false;
		}
	}
	return true;
}


//Function to Clear Those boxes which are having value at Page Load 'like First name having text First' at the time of Click 
function ClearBox(obj,strValueInBox)
{  
        if(trim(obj.value)==trim(strValueInBox))
        {
            obj.value="";    
        }
    }
//function to check valid age
function IsValidAge(obj)
{
    var age = trim(obj.value);
        if(eval(age)>120)
        {
                
            return false;
        }
        else if(eval(age)==0)
        {
                
            return false;
        }
        
        
    }
//function to check valid age
function IsValidAgeDiv(obj,DivId,objHdn)
{
     var age = trim(obj.value);
     var msg = "Invalid age.";
     var divobj = document.getElementById(DivId);
        if(eval(age)>120)
        {   
            
             if(IsAddSpan(divobj,msg))
                {if(objHDN.value == "-1")objHDN.value = "0";
                objHdn.value = parseInt(objHdn.value) + 1;
                return true;
                }
        }
        else if(eval(age)==0)
        {
                
              if(IsAddSpan(divobj,msg))
                {if(objHDN.value == "-1")objHDN.value = "0";
                objHdn.value = parseInt(objHdn.value) + 1;
                return true;
                }
        }
        else
        {
               if(IsRemoveSpan(divobj))
                {
                    objHdn.value = parseInt(objHdn.value) - 1;
                    return true;
                }
        }
        
    }
/*--------Start code by Deepak -----------------------*/
function isNumber(obj,displayName)
{
//alert("sdfsdadsa");
	var str=trim(obj.value);
	for(i=0;i<str.length;i++)
	{
		if(str.charAt(i)<'0'||str.charAt(i)>'9')
		{	
			if((str.charAt(0))=="-")
			{
				i=i+1;
					continue;
			}
			alert(displayName+" should be numeric");
			obj.value = "";
			obj.focus();
			return false;
		}
	}
	return true;
} 
//Coded By Deepak Kashyap
function FasterTrim(str) 
{
	var	str = str.replace(/^\s+/, "").replace(/\s+$/, "");
	return str;
}

function isDecimalWithDiv(obj,displayName,divId,objHDN)
{
    var divobj = document.getElementById(divId);
	var str = FasterTrim(obj.value.toString());
	for(var i=0;i<str.length;i++)
	{
		if(str.charAt(i)<'0'||str.charAt(i)>'9')
		{	
			if((str.charAt(0))=="-" || str.charAt(i) == '.')
			{
				i=i+1;
					continue;
			}
		var msg = displayName+" should be decimal.";
        if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
             objHDN.value = parseInt(objHDN.value) + 1;
             return false;
            }
		}
	}
	if(IsRemoveSpan(divobj))
    {
    objHDN.value = parseInt(objHDN.value) - 1;
    }
	return true;
} 
function isNumberWithDiv(obj,displayName,divId,objHDN)
{
    var divobj = document.getElementById(divId);
	var str = FasterTrim(obj.value.toString());
	for(var i=0;i<str.length;i++)
	{
		if(str.charAt(i)<'0'||str.charAt(i)>'9')
		{	
			if((str.charAt(0))=="-")
			{
				i=i+1;
					continue;
			}
		var msg = displayName+" should be numeric.";
        if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
             objHDN.value = parseInt(objHDN.value) + 1;
             return false;
            }
		}
	}
	if(IsRemoveSpan(divobj))
    {
    objHDN.value = parseInt(objHDN.value) - 1;
    }
	return true;
} 

/*
Ultimate Age calculator script- By Deepak Kashyap
*/

var one_day=1000*60*60*24
var one_month=1000*60*60*24*30
var one_year=1000*60*60*24*30*12

function GetAge(DateOfBirth)
   {
        if(isDate(DateOfBirth))
        {
        var DOB  = DateOfBirth.value;
	    var arrDOB = DOB.toString().split("/");
    	
	    var day = arrDOB[0].toString();
	    var mon = arrDOB[1].toString();
	    var yr  = arrDOB[2].toString();

        today=new Date()
        var pastdate=new Date(yr, mon-1, day)

        finalunit=one_year
        decimals=1
        
        yearspast=today.getFullYear()-yr-1
        tail=(today.getMonth()>mon-1 || today.getMonth()==mon-1 && today.getDate()>=day)? 1 : 0
        pastdate.setFullYear(today.getFullYear())
        pastdate2=new Date(today.getFullYear()-1, mon-1, day)
        tail=(tail==1)? tail+Math.floor((today.getTime()-pastdate.getTime())/(finalunit)*decimals)/decimals : Math.floor((today.getTime()-pastdate2.getTime())/(finalunit)*decimals)/decimals
        
        return (yearspast+tail);
        }
        else
        {
        DateOfBirth.valueOf = "";
        return ("");
        }
       
    }

function GetAge(DateOfBirth,ServerDate)
   {
        if(isDate(DateOfBirth))
        {
        var DOB  = DateOfBirth.value;
	    var arrDOB = DOB.toString().split("/");
    	
	    var day = arrDOB[0].toString();
	    var mon = arrDOB[1].toString();
	    var yr  = arrDOB[2].toString();

        today=new Date(ServerDate)
        var pastdate=new Date(yr, mon-1, day)

        finalunit=one_year
        decimals=1
        
        yearspast=today.getFullYear()-yr-1
        tail=(today.getMonth()>mon-1 || today.getMonth()==mon-1 && today.getDate()>=day)? 1 : 0
        pastdate.setFullYear(today.getFullYear())
        pastdate2=new Date(today.getFullYear()-1, mon-1, day)
        tail=(tail==1)? tail+Math.floor((today.getTime()-pastdate.getTime())/(finalunit)*decimals)/decimals : Math.floor((today.getTime()-pastdate2.getTime())/(finalunit)*decimals)/decimals
        
        return (yearspast+tail);
        }
        else
        {
        DateOfBirth.valueOf = "";
        return ("");
        }
       
    }
    
    
function ObjectIsBlank(obj)
{
    var str="";
	str=obj.value;
	var len=str.length;
	var i;
	for(i=0;i<len;++i)
	{
		if(str.charAt(i)!=" ")
		{
			return false;
		}
	}
	return true;
}
    
 //Calculate No Of Months from Date to Current Date
function CalculateNoOfMonths(objFitDate,objCurrentDate,msg)
 {    
    //Checking if Valid Effective From Date 
     if(ObjectIsBlank(objFitDate) == false)
     {
      if (isDate(objFitDate)== false) 
        {
            return false;
        }
     }
     
     var FitDate = new Date(objFitDate.value);
     var CurrentDate = new Date(objCurrentDate.value);
     if(FitDate >= CurrentDate)
     {
         alert(msg + " cannot be greater than today Date.");
         return false;
     }
} 

//Created By Deepak Kashyap
function enablePostBack(objCtrl,objArgu)
{
       __doPostBack(objCtrl,objArgu);
}


//Function for Validate Address Collection
function ValidateAdressCollection(objAddress1,objAddress2,objAddress3,objState,objCity,objPin)
{
   if(objAddress1.value == "")
        if(objAddress2.value == "")
            if(objAddress3.value == "")
            {
            alert("Address can not be left Blank.");
            objAddress1.focus();
            return false;
            }
    if(objState != null)
    if(objState.options[0].selected == true)
    {
    alert("Select valid State Name!");
    objState.focus();
    return false;
    }
    
    if(objCity != null)
    if(objCity.options[0].selected == true)
    {
    alert("Select valid City Name!");
    objCity.focus();
    return false;
    }
    
    if(objPin.value == "")
    {
    alert("Pin Code not be left Blank.");
    objPin.focus();
    return false;
    }

}      


/*
Frame No Validation script- By Deepak Kashyap
*/
function FrameNoPatternMatching(obj,divId,objHDN)
{
	var divobj = document.getElementById(divId);
    var str=obj.value;
    //var str= '07E16F1234p';
    var msg = ''
   //Frame No with 11 characters.
    if(str.length == 11)
    {
    var regAtoH = new RegExp('[A-H]');
    var regJtoM = new RegExp('[J-M]');
	    for(var i=0;i<str.length;i++)
	    {
	        if(i==0 || i==1 || i==3 || i==4 || i>5)
	        {
	          if(str.charAt(i)<'0'||str.charAt(i)>'9')
		        {
		         if(i==0 || i==1)
	                {
	                 msg = "In Frame Number First two characters should be numeric.";
                     if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                    }
                 else if(i==3 || i==4)
	                {
//		        	 msg = "In Frame Number 4th and 5th character should be numeric.";
//                     if(IsAddSpan(divobj,msg))
//                        {if(objHDN.value == "-1")objHDN.value = "0";
//                        objHDN.value = parseInt(objHDN.value) + 1;
//                        return false;
//                        }
                    }
                 else if(i==6)
	                {
		        	msg = "In Frame Number 7th character should be numeric.";
                    if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                    }   
                 else if(i==7)
	                {
					msg = "In Frame Number 8th character should be numeric.";
                    if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                    }   
                 else if(i==8)
	                {
					msg = "In Frame Number 9th character should be numeric.";
                    if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                    }   
                 else if(i==9)
	                {
					msg = "In Frame Number 10th character should be numeric.";
                    if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                    }   
                 else if(i==10)
	                {
					msg = "In Frame Number 11th character should be numeric.";
                    if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                    }   
                } 
            }
            else if(i==2)
            {
            if(!str.charAt(i).toString().match(regAtoH))
                if(!str.charAt(i).toString().match(regJtoM))
                {
					msg = "In Frame Number 3rd character should be alphabet between either A-H or J-M.";
                    if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                }
            }
            else if(i==5)
            {
                if(str.charAt(i) != 'C')
                  if(str.charAt(i) !='F')
                  {
        	        msg = "In Frame Number 6th character should be either 'C' of 'F'.";
                    if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                  }
            }      
        }
    }
    //Frame No with 17 characters.
    else if(str.length == 17)
    {
    var regAtoZ = new RegExp('[A-Z]');
    var reg0to9 = new RegExp('[0-9]');
	var regG9H = new RegExp('[G,H,9]');
	    for(var i=0;i<str.length;i++)
	    {
	    if(i>=0 && i<3)
	        {
	        if(str.substring(0,3) != 'MBL')
              {
                    msg = "In Frame Number First Three characters should be 'MBL'.";
                    if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
              }    
	        }
	    else if(i>3 && i<9)
	        {
	        if(!str.charAt(i).toString().match(regAtoZ))
                if(!str.charAt(i).toString().match(reg0to9))
                {
                     msg = "In Frame Number 4th to 9th character should be either 'A-Z' or '0-9'.";
                    if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                }
	        }
	    else if(i==9)
	        {
            if(!str.charAt(i).toString().match(reg0to9))
                {
                 //    msg = "In Frame Number 10th character should be numeric.";
                  //  if(IsAddSpan(divobj,msg))
                   //     {if(objHDN.value == "-1")objHDN.value = "0";
                   //     objHDN.value = parseInt(objHDN.value) + 1;
                    //    return false;
                    //    }
                }
	        }
	    else if(i==10)
            {
				if(!str.charAt(i).toString().match(regG9H))
                //if(str.charAt(i) != 'G' || str.charAt(i) !='9'|| str.charAt(i) !='H') 
                  {
//                     msg = "In Frame Number 11th character should be either 'G' or '9' or 'H'.";
//                    if(IsAddSpan(divobj,msg))
//                        {if(objHDN.value == "-1")objHDN.value = "0";
//                        objHDN.value = parseInt(objHDN.value) + 1;
//                        return false;
//                        }
                  }
            }      
	    else if(i==11)
            {
                if(!str.charAt(i).toString().match(regAtoZ))
                  {
        	         msg = "In Frame Number 12th character should be alphabet.";
                    if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                  }
            }
        else if(i>11)
            {
                if(!str.charAt(i).toString().match(reg0to9))
                  {
        	        if(i==12)
	                {
        	         msg = "In Frame Number 13th character should be numeric.";
                    if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                    }   
                    else if(i==13)
	                {
        	         msg = "In Frame Number 14th character should be numeric.";
                    if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                    }   
                    else if(i==14)
	                {
        	         msg = "In Frame Number 15th character should be numeric.";
                    if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                    }   
                    else if(i==15)
	                {
        	         msg = "In Frame Number 16th character should be numeric.";
                    if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                    }   
                    else if(i==16)
	                {
        	         msg = "In Frame Number 17th character should be numeric.";
                    if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                    }   
                  }
            }          
        }
    }
    else
    {
     msg = "Frame No. should be either 11 or 17 characters long!";
        if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return false;
            }

	//alert("Frame No. should be either 11 or 17 characters long!");
	//obj.focus();
	//return false;
    }
    return true;
}


/*
Engine No Validation script- By Deepak Kashyap
*/

function EngineNoPatternMatching(obj,objFrameNo,divId,objHDN)
{ //
	var divobj = document.getElementById(divId);
    var str=obj.value;
	var msg = '';
    //var str= '07E16F1234p';
    var regAtoH = new RegExp('[A-H]');
    var regJtoM = new RegExp('[J-M]');
    var regAtoZ = new RegExp('[A-Z]');
    var reg0to9 = new RegExp('[0-9]');
	var regG9H = new RegExp('[G,H,9]');
    /*
    if(FrameNoPatternMatching(objFrameNo,divId,objHDN))
    {
    if(objFrameNo.value.length == 11)
        {
        if(obj.value.length != 11)
            {
            msg = "Engine No. should be 11 characters long.";
			if(IsAddSpan(divobj,msg))
                {
                objHDN.value = parseInt(objHDN.value) + 1;
                return true;
                }
            }
        }
    else if(objFrameNo.value.length == 17)
        {
        if(obj.value.length != 14)
            {
            msg = "Engine No. should be 14 characters long.";
			if(IsAddSpan(divobj,msg))
                {if(objHDN.value == "-1")objHDN.value = "0";
                objHDN.value = parseInt(objHDN.value) + 1;
                return true;
                }
            }
        }
    else
        {
        msg = "Frame No. should be either 11 or 17 characters long!";
			if(IsAddSpan(divobj,msg))
                {
                objHDN.value = parseInt(objHDN.value) + 1;
                return true;
                }
        }         
    }
    */
    if(str.length == 11)
    {
	    for(var i=0;i<str.length;i++)
	    {
	        if(i==0 || i==1 || i==3 || i==4 || i>5)
	        {
	          if(str.charAt(i)<'0'||str.charAt(i)>'9')
		        {
		         if(i==0 || i==1)
	                {
		        	msg = "In Engine Number First two characters should be numeric.";
			        if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                    }
                 else if(i==3 || i==4)
	                {
//		        	msg = "In Engine Number 4th and 5th character should be numeric.";
//			        if(IsAddSpan(divobj,msg))
//                        {if(objHDN.value == "-1")objHDN.value = "0";
//                        objHDN.value = parseInt(objHDN.value) + 1;
//                        return false;
//                        }
                    }
                 else if(i==6)
	                {
//		        	msg = "In Engine Number 7th character should be numeric.";
//			        if(IsAddSpan(divobj,msg))
//                        {if(objHDN.value == "-1")objHDN.value = "0";
//                        objHDN.value = parseInt(objHDN.value) + 1;
//                        return false;
//                        }
                    }   
                 else if(i==7)
	                {
		        	msg = "In Engine Number 8th character should be numeric.";
			        if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                    }   
                 else if(i==8)
	                {
		        	msg = "In Engine Number 9th character should be numeric.";
			        if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                    }   
                 else if(i==9)
	                {
		        	msg = "In Engine Number 10th character should be numeric.";
			        if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                    }   
                 else if(i==10)
	                {
		        	msg = "In Engine Number 11th character should be numeric.";
			        if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                    }   
                } 
            }
            else if(i==2)
            {
            if(!str.charAt(i).toString().match(regAtoH))
                if(!str.charAt(i).toString().match(regJtoM))
                {
                msg = "In Engine Number Third character should be alphabet between either A-H or J-M.";
			        if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return false;
                        }
                }
            }
            else if(i==5)
            {
                if(FrameNoPatternMatching(objFrameNo) == true)
                {
                    if(objFrameNo.value.charAt(i) == 'F')
                        if(str.charAt(i) != 'E')
                         {
        	              msg = "In Engine Number 6th character should be 'E'.";
    			          if(IsAddSpan(divobj,msg))
                            {if(objHDN.value == "-1")objHDN.value = "0";
                            objHDN.value = parseInt(objHDN.value) + 1;
                            return false;
                            }
                         }
                    if(objFrameNo.value.charAt(i) == 'C')
                        if(str.charAt(i) != 'M')
                         {
        	              msg = "In Engine Number 6th character should be 'M'.";
    			          if(IsAddSpan(divobj,msg))
                            {if(objHDN.value == "-1")objHDN.value = "0";
                            objHDN.value = parseInt(objHDN.value) + 1;
                            return false;
                            }
                         }
                }
            }  
        }
    }
    else if(str.length == 14)
    {
      for(var i=0;i<str.length;i++)
	    {
	        if(i>=0 && i<7)
	        {
	        if(!str.charAt(i).toString().match(regAtoZ))
                if(!str.charAt(i).toString().match(reg0to9))
                {
                msg = "In Engine Number 1st to 7th character should be either 'A-Z' or '0-9'.";
	            if(IsAddSpan(divobj,msg))
                 {if(objHDN.value == "-1")objHDN.value = "0";
                 objHDN.value = parseInt(objHDN.value) + 1;
                 return false;
                 }
                }
	        }
	        else if(i==7)
            {
				if(!str.charAt(i).toString().match(regG9H))
                //if(str.charAt(i) != 'G' || str.charAt(i) !='9'|| str.charAt(i) !='H')
                  {
//        	      msg = "In Engine Number 8th character should be either 'G' or '9' or 'H'.";
//	              if(IsAddSpan(divobj,msg))
//                     {if(objHDN.value == "-1")objHDN.value = "0";
//                     objHDN.value = parseInt(objHDN.value) + 1;
//                     return false;
//                     }
                  }
            }
            else if(i==8)
            {
                if(!str.charAt(i).toString().match(regAtoZ))
                  {
        	      msg = "In Engine Number 9th character should be alphabet.";
	              if(IsAddSpan(divobj,msg))
                    {if(objHDN.value == "-1")objHDN.value = "0";
                    objHDN.value = parseInt(objHDN.value) + 1;
                    return false;
                    }
                  }
            }
            else if(i>9)
            {
                if(!str.charAt(i).toString().match(reg0to9))
                  {
        	        if(i==9)
	                {
//		        	msg = "In Engine Number 10th character should be numeric.";
//					if(IsAddSpan(divobj,msg))
//                     {if(objHDN.value == "-1")objHDN.value = "0";
//                     objHDN.value = parseInt(objHDN.value) + 1;
//                     return false;
//                     }

                    }   
                    else if(i==10)
	                {
		        	msg = "In Engine Number 11th character should be numeric.";
					if(IsAddSpan(divobj,msg))
                     {if(objHDN.value == "-1")objHDN.value = "0";
                     objHDN.value = parseInt(objHDN.value) + 1;
                     return false;
                     }
                    }   
                    else if(i==11)
	                {
		        	msg = "In Engine Number 12th character should be numeric.";
					if(IsAddSpan(divobj,msg))
                     {if(objHDN.value == "-1")objHDN.value = "0";
                     objHDN.value = parseInt(objHDN.value) + 1;
                     return false;
                     }
                    }   
                    else if(i==12)
	                {
		        	msg = "In Engine Number 13th character should be numeric.";
					if(IsAddSpan(divobj,msg))
                     {if(objHDN.value == "-1")objHDN.value = "0";
                     objHDN.value = parseInt(objHDN.value) + 1;
                     return false;
                     }
                    }   
                    else if(i==13)
	                {
		        	msg = "In Engine Number 14th character should be numeric.";
					if(IsAddSpan(divobj,msg))
                     {if(objHDN.value == "-1")objHDN.value = "0";
                     objHDN.value = parseInt(objHDN.value) + 1;
                     return false;
                     }
                    }   
                  }
            }	    
	    }
    }
    else
    {
    msg = "Engine No. should be either 11 or 14 characters long.";
	if(IsAddSpan(divobj,msg))
        {
        if(objHDN.value == "-1")objHDN.value = "0";
        objHDN.value = parseInt(objHDN.value) + 1;
        return false;
        }
    }
    return true;
}

function ValidateFrameNoEngineNo(objFrameNo,objEngineNo)
{
//var FrameNo = document.getElementById("<%=txtFrameNo.ClientID %>");
//var EngineNo = document.getElementById("<%=txtEngineNo.ClientID %>");

var FrameNo = document.getElementById('objFrameNo');
var EngineNo = document.getElementById('objEngineNo');

if(isBlank(FrameNo,'Frame Number')==true)
    {
    FrameNo.focus();
    return false;
    }
else
    {
    if(FrameNoPatternMatching(FrameNo) == false)
        {
        return false;
        }
    }    
if(isBlank(EngineNo,'Engine Number') == true)
    {
    EngineNo.focus();
    return false;
    }
/*    
else
    {
    if(EngineFrameNoPatternMatching(EngineNo,FrameNo) == false)
        {
        return false;
        }
    }    

if(FrameNoPatternMatching(FrameNo) == true)
    {
    if(EngineFrameNoPatternMatching(EngineNo,FrameNo) == true)
        {
        return true;
        }
    else
        {
        return false;
        }
    }        
else
    {
    return false;
    }*/
} 

function IsAddSpan(objDIV,msg) 
{ 
if(objDIV != null)
  {
    var spanTag = document.createElement('span'); 
    spanTag.id = 'Span'+ objDIV.id;
    spanTag.title = msg;
    spanTag.innerHTML = '<img style=cursor:hand; src="../App_Themes/Images/Error_icon.gif">';
    var exist = document.getElementById(spanTag.id);
    if(exist == null)
        {
        objDIV.appendChild(spanTag);
        return true;
        }
    else
        {
        IsRemoveSpan(objDIV);
        objDIV.appendChild(spanTag);
        return true;
        }
  }
}

function IsAddSpanEndr(objDIV,msg,objHdn) 
{ 
if(objDIV != null)
  {
    var spanTag = document.createElement('span'); 
    spanTag.id = 'Span'+ objDIV.id;
    spanTag.title = msg;
    spanTag.innerHTML = '<img style=cursor:hand; src="../App_Themes/Images/Error_icon.gif">';
    var exist = document.getElementById(spanTag.id);
    if(exist == null)
        {
        objDIV.appendChild(spanTag);
        return true;
        }
    else
        {
        IsRemoveSpan(objDIV);
        objHdn.value = eval(objHdn.value)-1;   
        objDIV.appendChild(spanTag);
        return true;
        }
  }
}
function IsRemoveSpan(objDIV) 
{
//var d = document.getElementById(divtxtAddress1);
if(objDIV != null)
  {
    var elm = 'Span'+ objDIV.id;
    var olddiv = document.getElementById(elm);
    if(olddiv != null)
        {
        objDIV.removeChild(olddiv);
        return true;
        }
    else
        {
        return false;
        }
  }
}


function IsRemoveSpanCustomised(DIVId) 
{
var objDIV = document.getElementById(DIVId);
if(objDIV!=null)
{
var elm = 'Span'+ objDIV.id;
var olddiv = document.getElementById(elm);
if(olddiv != null)
    {
    objDIV.removeChild(olddiv);
    return true;
    }
else
    {
    return false;
    }
}
}
//Function to Restrict those three "',;,~" characters on Save

function ValidateSpecialCharsOnSave(obj,displayName,divId,objHDN)
    {
      var divobj = document.getElementById(divId); 
      var objLen = obj.value.length;
      for(var i =0;i<objLen;i++)
      {
        var Char = obj.value.charAt(i);
        if (Char=="'" || Char==";" || Char=="~")
        {
        var msg = "In "+ displayName + " ',;,~ characters are not allowed. Please enter valid characters.";
            if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return true;
            }
            //alert("There three ',;,~ characters are not allowed. Please enter valid characters.");
            //obj.focus();
            //return false;
        }        
      }
      if(IsRemoveSpan(divobj))
            {
            objHDN.value = parseInt(objHDN.value) - 1;
            return false;
            }
    }
    
///function to check whether minimum no of characters has been entered or not -- Deepak
function ValidateLeastNumOfChars(obj,MaxOrMinNum,objCaption,divId,objHDN)
{
      var divobj = document.getElementById(divId); 
      if(trim(obj.value).length < eval(MaxOrMinNum))
        {
            msg = "Number of characters in " + objCaption +" must be " + MaxOrMinNum + ".";
            if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return true;
            }
        }
      else 
		 {
        if(IsRemoveSpan(divobj))
            {
            objHDN.value = parseInt(objHDN.value) - 1;
            return true;
            }
         }  
}      

///function to check whether minimum no of characters has been entered or not -- Manisha
function ValidateLeastNumOfCharsEndr(obj,MaxOrMinNum,objCaption,divId,objHDN)
{
      var divobj = document.getElementById(divId); 
      if(trim(obj.value).length < eval(MaxOrMinNum))
        {
            msg = "Number of characters in " + objCaption +" must be " + MaxOrMinNum + ".";
            if(IsAddSpanEndr(divobj,msg,objHDN))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return true;
            }
        }
      else 
		 {
        if(IsRemoveSpan(divobj))
            {
            objHDN.value = parseInt(objHDN.value) - 1;
            return true;
            }
         }  
}      

function EmailValidation(str,divId,objHDN) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		var msg = "Invalid Email Id.";
		var divobj = document.getElementById(divId);

		if (str.indexOf(at)==-1){
		   if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return true;
            }
		}

		else if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   	if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return true;
            }
		}

		else if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		   	if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return true;
            }
		}

		 else if (str.indexOf(at,(lat+1))!=-1){
		   	if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return true;
            }
		 }

		 else if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		   	if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return true;
            }
		 }

		 else if (str.indexOf(dot,(lat+2))==-1){
		   	if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return true;
            }
		 }
		 
		 
		 else if (str.indexOf(" ")!=-1){
		   	if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return true;
            }
		 }
		  else if (str.indexOf(dot)+1 == str.length){
		   	if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return true;
            }
		 }
		 else 
		 {
        if(IsRemoveSpan(divobj))
            {
            objHDN.value = parseInt(objHDN.value) - 1;
            return false;
            }
         }
	}    
	
//Script for default selection of Drop down box -- Deepak Kashyap
function isValidSelection(obj,displayName,divId,objHDN)
{
var divobj = document.getElementById(divId);
 if(divobj != null)
    if(obj.options[0].selected == true)
    {
    var msg = "Select valid " + displayName;
    if(IsAddSpan(divobj,msg))
        {if(objHDN.value == "-1")objHDN.value = "0";
        objHDN.value = parseInt(objHDN.value) + 1;
        return true;
        }
    }
    else
    {
    if(IsRemoveSpan(divobj))
        {
        objHDN.value = parseInt(objHDN.value) - 1;
        return false;
        }
    }
}
//Script for default selection of Drop down box -- Manisha
function isValidSelectionNew(obj,displayName,divId,objHDN)
{
//
var divobj = document.getElementById(divId);
 if(divobj != null)
 {
    if(trim(obj.value) == "0")
    {
    var msg = "Select valid " + displayName;
    if(IsAddSpanEndr(divobj,msg,objHDN))
        {if(objHDN.value == "-1")objHDN.value = "0";
        objHDN.value = parseInt(objHDN.value) + 1;
        return true;
        }
    }
    else
    {
    if(IsRemoveSpan(divobj))
        {
        objHDN.value = parseInt(objHDN.value) - 1;
        return false;
        }
    }
    }
}
//Script for TextBox Text should not be left blank -- Deepak Kashyap
function isTextBlank(obj,displayName,divId,objHDN)
{
//alert('hdn-'+objHDN.value);
	var divobj = document.getElementById(divId);
	var str="";
	str=trim(obj.value);
	var len=str.length;
	var i;
	for(i=0;i<len;++i)
	{
		if(str.charAt(i)!=" ")
		{
		    if(IsRemoveSpan(divobj))
            {
            objHDN.value = parseInt(objHDN.value) - 1;
            }
            return false;
		}
	}
    if(divobj != null)
        {
        var msg = displayName+" cannot be left blank.";
         if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return true;
            }
        }
   else
       {
       //
        alert("Div is not Present");
       }     
}


//Script for Landline No Msg -- Deepak Kashyap
function isContactNoBlank(obj,divId,objHDN)
{
//alert('hdn-'+objHDN.value);
	var divobj = document.getElementById(divId);
	var str="";
	str=trim(obj.value);
	var len=str.length;
	var i;
	for(i=0;i<len;++i)
	{
		if(str.charAt(i)!=" ")
		{
		    if(IsRemoveSpan(divobj))
            {
            objHDN.value = parseInt(objHDN.value) - 1;
            }
            return false;
		}
	}
    if(divobj != null)
        {
        var msg = "Either Landline No. or Mobile No. Must be entered.";
         if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return true;
            }
        }
   else
       {
       //
        alert("Div is not Present");
       }     
}


//Script for TextBox Text should not be left blank -- Manisha
function isTextBlankEndr(obj,displayName,divId,objHDN)
{

	var divobj = document.getElementById(divId);
	var str="";
	str=trim(obj.value);
	var len=str.length;
	var i;
	for(i=0;i<len;++i)
	{
		if(str.charAt(i)!=" ")
		{
		    if(IsRemoveSpan(divobj))
            {
            objHDN.value = parseInt(objHDN.value) - 1;
            }
            return false;
		}
	}
    if(divobj != null)
        {
        var msg = displayName+" cannot be left blank.";
         if(IsAddSpanEndr(divobj,msg,objHDN))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return true;
            }
        }
   else
       {
       //
        alert("Div is not Present");
       }     
}


//Script for TextBox Text should not be left blank -- Deepak Kashyap
function isTextBlankText(obj,displayName,divId,objHDN,text)
{
	var divobj = document.getElementById(divId);
	var str="";
	str=obj.value;
	var len=str.length;
	var i;
	for(i=0;i<len;++i)
	{
		if(str.charAt(i)!=" ")
		{
		    if(IsRemoveSpan(divobj))
            {
            objHDN.value = parseInt(objHDN.value) - 1;
            }
            return false;
		}
	}
    if(divobj != null)
        {
        
             if(trim(str) == trim(text) || trim(str) == '')
             {
                 var msg = displayName+" cannot be left blank.";
                 if(IsAddSpan(divobj,msg))
                    {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return true;
                    }
               }     
         
        }
   else
       {
       //
        alert("Div is not Present");
       }     
}




//Script for TextBox Text should not be left blank -- Deepak Kashyap
function isSelectRad(objRad1,objRad2,displayName,divId,objHDN)
{
	var divobj = document.getElementById(divId);
	var str="";
	  if(IsRemoveSpan(divobj))
            {
            objHDN.value = parseInt(objHDN.value) - 1;
            }
           
	 if(objRad1.checked == false && objRad2.checked == false)
             {
                
               if(divobj != null)
                {
                     msg = "Please Select " + displayName;
                     if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return true;
                        }
                }
                else
                {
                //
                    alert("Div is not Present");
                }     
             }
         
}

//Script for checkecbox to be checked mandatory-- Manisha
function isSelectChk(objChk,displayName,divId,objHDN)
{
	var divobj = document.getElementById(divId);
	var str="";
	  if(IsRemoveSpan(divobj))
            {
            objHDN.value = parseInt(objHDN.value) - 1;
            }
           
	 if(objChk.checked == false)
             {
                
               if(divobj != null)
                {
                     msg = "Please Select " + displayName;
                     if(IsAddSpan(divobj,msg))
                        {if(objHDN.value == "-1")objHDN.value = "0";
                        objHDN.value = parseInt(objHDN.value) + 1;
                        return true;
                        }
                }
                else
                {
                //
                    alert("Div is not Present");
                }     
             }
         
}

function isValidDate(dt,divId,objHDN)
{
var divobj = document.getElementById(divId);
var msg = "";
if(trim(dt.value) != "" && trim(dt.value) != "DD/MM/YYYY")
    {
    var dtStr = dt.value;

	var daysInMonth = DaysArray(12)
	var pos1=dtStr.indexOf(dtCh)
	var pos2=dtStr.indexOf(dtCh,pos1+1)
	var strDay=dtStr.substring(0,pos1)
	var strMonth=dtStr.substring(pos1+1,pos2)

	var strYear=dtStr.substring(pos2+1)
	strYr=strYear
	if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
	if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
	for (var i = 1; i <= 3; i++) {
		if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
	}
	month=parseInt(strMonth)
	day=parseInt(strDay)
	year=parseInt(strYr)
	if (pos1==-1 || pos2==-1)
	    {
	    msg = "The date format should be : DD/MM/YYYY.";
        if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return true;
            }
		//alert("The date format should be : DD/MM/YYYY")
		//return false
	}
	else if (strMonth.length<1 || month<1 || month>12)
	{
	    msg = "Please enter a valid month.";
        if(IsAddSpan(divobj,msg))
            {if(objHDN.value == "-1")objHDN.value = "0";
            objHDN.value = parseInt(objHDN.value) + 1;
            return true;
            }
            //alert("Please enter a valid month")
		    //return false
	}
	else if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month])
	{
		msg = "Please enter a valid day.";
        if(IsAddSpan(divobj,msg))
        {if(objHDN.value == "-1")objHDN.value = "0";
        objHDN.value = parseInt(objHDN.value) + 1;
        return true;
        }
		//alert("Please enter a valid day")
		//return false
	}
	else if (strYear.length != 4 || year==0 || year<minYear || year>maxYear)
	{
		msg = "Please enter a valid 4 digit year between "+minYear+" and "+maxYear + ".";
        if(IsAddSpan(divobj,msg))
        {if(objHDN.value == "-1")objHDN.value = "0";
        objHDN.value = parseInt(objHDN.value) + 1;
        return true;
        }
		///alert("Please enter a valid 4 digit year between "+minYear+" and "+maxYear)
		///return false
	}
	else if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false)
	{
		msg = "Please enter a valid date.";
        if(IsAddSpan(divobj,msg))
        {if(objHDN.value == "-1")objHDN.value = "0";
        objHDN.value = parseInt(objHDN.value) + 1;
        return true;
        }
    	//alert("Please enter a valid date")
		//return false
	}
	else
	{
	    if(IsRemoveSpan(divobj))
            {
            objHDN.value = parseInt(objHDN.value) - 1;
            }
            return false;
	}
 }
 else
 {
        msg = "Please enter a valid date.";
        if(IsAddSpan(divobj,msg))
        {
        if(objHDN.value == "-1")objHDN.value = "0";
        objHDN.value = parseInt(objHDN.value) + 1;
        return true;
        }
 }	
}

//Drop down Client Side Sorting----Deepak Kashyap

 

// sort function - ascending (case-insensitive)

function sortFuncAsc(record1, record2) 

{

    var value1 = record1.optText.toLowerCase();

    var value2 = record2.optText.toLowerCase();

    if (value1 > value2) return(1);

    if (value1 < value2) return(-1);

    return(0);

}

 

// sort function - descending (case-insensitive)

function sortFuncDesc(record1, record2) 

{

    var value1 = record1.optText.toLowerCase();

    var value2 = record2.optText.toLowerCase();

    if (value1 > value2) return(-1);

    if (value1 < value2) return(1);

    return(0);

}

 

function sortSelect(selectToSort, ascendingOrder) 

{

    if (arguments.length == 1) ascendingOrder = true;    // default to ascending sort

 

    // copy options into an array

    var myOptions = [];

    for (var loop=0; loop<selectToSort.options.length; loop++) {

        myOptions[loop] = { optText:selectToSort.options[loop].text, optValue:selectToSort.options[loop].value };

    }

 

    // sort array

    if (ascendingOrder) {

        myOptions.sort(sortFuncAsc);

    } else {

        myOptions.sort(sortFuncDesc);

    }

 

    // copy sorted options from array back to select box

    selectToSort.options.length = 0;

    for (var loop=0; loop<myOptions.length; loop++) {

        var optObj = document.createElement('option');

        optObj.text = myOptions[loop].optText;

        optObj.value = myOptions[loop].optValue;

        selectToSort.options.add(optObj);

    }

}

function replaceDefaultText(e) {
    var target = window.event ? window.event.srcElement : e ? e.target : null;
    if (!target) return;
    
    if (target.value == '' && target.defaultText) {
        target.value = target.defaultText;
    }
}

//Added by deepak Kashyap

function onFocusClear(obj,text)
{
    if(obj.value == text) 
        {
        obj.value = '';
        }
}
//Added by deepak Kashyap
function Isleapyear(Year)
    {
        Year = parseInt(Year);

        if(Year%4 == 0)
        {
	        if(Year%100 != 0)
	        {
		        return true;
	        }
	        else
	        {
		        if(Year%400 == 0)
			        return true;
		        else
			        return false;
	        }
        }
    return false;
    }

function CurrentDateCom(objDate)
{
             var strdate = objDate.value.split('/');
             var myDate = new Date; 
             myDate.setDate(strdate[0]);
             myDate.setMonth(strdate[1]-1); // January = 0
             myDate.setFullYear(strdate[2]); 
           
             var today = new Date;
             if (myDate > today) 
                {
                   
                    return false;
                }
                
}                


function tochklengthAddress(obj,len,msg)
{
    if(trim(obj.value).length > eval(len))
    {
        alert(msg);
        return false;
    }
}     

 function OnEnterKeyGo(obj,txtControl,txtGo)
        {
            
            var str = obj.id.split(txtControl);
            if(str[0].length>0)
            {
                var strId = str[0]  + txtGo;
                var obj = document.getElementById(strId);
                if(obj != null)
                {
                       obj.focus();
                }
            }
       
        

        }
// Added By Avanish Kumar On FEB-10-2009
// Function to Validate User Entered Value With Current Date
function ValidateWithCurrDate(PayChqDate)
{
//  
    var objPayChqDate = PayChqDate.value;
    // Do Split and Rearrange Date in Desired Format For Validation
    arrPayChqDate =  objPayChqDate.split("/"); // My Date is DD/MM/YYYY
    var myDate = new Date(arrPayChqDate[1]+"/"+arrPayChqDate[0]+"/"+arrPayChqDate[2]);    
    
    var objToday = new Date();        
    //alert(objPayChqDate+"--"+objToday)
    if(myDate > objToday)
     {
         //alert("To date cannot be greater than today Date.");
         return false;
     }
}           
function getDateinMMDDYYYY(Datevalue)
{
var arrDate = Datevalue.toString().split("/");

var day = arrDate[0].toString();
var mon = arrDate[1].toString();
var yr  = arrDate[2].toString();
Datevalue = mon + "/" + day + "/" + yr;
return Datevalue;
}

function getDateinDDMMYYYY(Datevalue)
{
var arrDate = Datevalue.toString().split("/");

var day = arrDate[1].toString();
var mon = arrDate[0].toString();
var yr  = arrDate[2].toString();
Datevalue = day + "/" + mon + "/" + yr;
return Datevalue;

}

function ChkUniquenessMultiplEntries(objGv,strTxt,strMessage,Count)
{

if(trim(Count) == "")
{
    Count = 1;
}
    var strId = objGv.id + '_ctl'
    
    for(var temp=0;temp<=Count;temp++)
        {
            var i=eval(temp) + 2;
            if(eval(i)<10)
            {
                i = "0" + i;
            }        
            var strTxtBox = strId + i + '_' + strTxt;
            var objTxtBox = document.getElementById(strTxtBox);
            if(objTxtBox!=null)
                {
                    if(GetIsUnique(objGv,i,objTxtBox,Count,strTxt) == 1)   
                        {
                            alert("Please enter unique " + strMessage + ".");
                            return false;
                        }
                }
           
            
        }
    
}

function GetIsUnique(objGv,i,objText,count,strTxt)
    {
        var strId = objGv.id + '_ctl'
        var IsEqual =0;
        for(var temp1=0;temp1<=count;temp1++)
            {
                var j=eval(temp1) + 2;
                if(eval(j)<10)
                {
                    j = "0" + j;
                } 
                       
                var strTxtBox = strId + j + '_' + strTxt
                var objTxtBox = document.getElementById(strTxtBox);
                if(j!=i)
                {
                    if(objTxtBox!=null)
                        {
                            if(trim(objTxtBox.value) == trim(objText.value))
                                {
                                    IsEqual = 1;
                                    break;
                                }
                        }   
                }
            }
           return IsEqual; 
    }




function ChkUniquenessMultiplEntriesLandline(objGv,strTxt1,strTxt2,strMessage,Count)
{

if(trim(Count) == "")
{
    Count = 1;
}
    var strId = objGv.id + '_ctl'
    
    for(var temp=0;temp<=Count;temp++)
        {
            var i=eval(temp) + 2;
            if(eval(i)<10)
            {
                i = "0" + i;
            }        
            var strTxtBox = strId + i + '_' + strTxt1;
            var objTxtBox = document.getElementById(strTxtBox);
            
            var strTxtBox2 = strId + i + '_' + strTxt2;
            var objTxtBox2 = document.getElementById(strTxtBox2);
            if(objTxtBox!=null && objTxtBox2!=null)
                {
                    if(GetIsUniqueLandline(objGv,i,objTxtBox,objTxtBox2,Count,strTxt1,strTxt2) == 1)   
                        {
                            alert("Please enter unique Landline No.");
                            return false;
                        }
                }
           
            
        }
    
}

function GetIsUniqueLandline(objGv,i,objText,objText2,count,strTxt1,strTxt2)
    {
        var strId = objGv.id + '_ctl'
        var IsEqual =0;
        for(var temp1=0;temp1<=count;temp1++)
            {
                var j=eval(temp1) + 2;
                if(eval(j)<10)
                {
                    j = "0" + j;
                } 
                var strNumOrg = objText.value + objText2.value;       
                var strTxtBox = strId + j + '_' + strTxt1
                var objTxtBox = document.getElementById(strTxtBox);
                var strTxtBox2 = strId + j + '_' + strTxt2
                var objTxtBox2 = document.getElementById(strTxtBox2);
                if(j!=i)
                {
                    if(objTxtBox!=null && objTxtBox2!=null)
                        {
                            var strNum = objTxtBox.value + objTxtBox2.value;
                            if(trim(strNumOrg) == trim(strNum))
                                {
                                    IsEqual = 1;
                                    break;
                                }
                        }   
                }
            }
           return IsEqual; 
    }




//Functon to restrict entry in Multiple entries without entering data in last row.
//Limitation function is valid on multiple enteries with two or less than two textBoxes
//obj : GridView object 
//obj1: name of textbox Used
//strMessage1 :Error message to be displayed for obj1.
//obj2: name of textbox Used (Optional)
//strMessage1 : Error message to be displayed for obj2.(Optional)
 function OnAddMultipleEnteriesNew(obj,obj1,Count,strMessage1,obj2,strMessage2)
    {
    var temp;
    var c = obj.rows.length
     if(eval(c)!=0)
     {
         temp = c;
     }
     else
     {
         temp = obj.rows.length;
     }
    var strId = obj.id + '_ctl'
    temp=eval(temp)+1;
    var i = temp;
    if(temp<9)
    {
       i = "0" + i;
    }
    var strStdId = strId + i + "_" + obj1;
    var strNumId = strId + i + "_" + obj2;
    if(document.getElementById(strStdId)!=null)
    {
        if(trim(document.getElementById(strStdId).value) == "" || trim(document.getElementById(strStdId).value) == "STD" || trim(document.getElementById(strStdId).value) == "Mobile")
        {
            alert("Please enter " + strMessage1 + ".");
            document.getElementById(strStdId).focus();
            return false;
        }
        else
        {
        if(document.getElementById(strNumId) == null)
            {
                if(ChkUniquenessMultiplEntries(obj,obj1,strMessage1,Count) == false)
                {
                    return false;
                }
            }
        }    
    }

    if(document.getElementById(strNumId)!=null)
    {
        if(trim(document.getElementById(strNumId).value) == "" || trim(document.getElementById(strNumId).value) == "Landline" || trim(document.getElementById(strNumId).value) == "Mobile")
        {
           alert("Please enter " + strMessage2 + ".");
            document.getElementById(strNumId).focus();
            return false;
        }
        else
        {
            if(ChkUniquenessMultiplEntriesLandline(obj,obj1,obj2,strMessage1,Count) == false)
                {
                    return false;
                }
        }
    }
   
    }  
    
    function ViewImage(strTitle,hdnProductLogo,FolderName)
    {
    strHidden = 'ctl00_ContentPlaceHolder1_' + hdnProductLogo;
       objhdnProductLogo = document.getElementById(strHidden); 
       
       var url='../ExternalImgFrame.aspx?LogoPath=' + objhdnProductLogo.value +"&Title=" + strTitle + "&FolderName=" + FolderName;
          
         
         mywin =window.open(url,"newwin","left=150,top=5,width=400,height=400,scrollbars=yes");
         //mywin =window.open(url,"page","left=150,top=5,width=400,height=400,scrollbars=yes,titlebar=yes");
         if(mywin!=null)
            {
            mywin.focus();
            }
         else
            {
                alert("Your popup's are blocked. Please unblock your popup's.");
            }   
        return false;
    }
    
    
    
    
 