//****************************************************************************************
// ------------------------- JAVA SCRIPT VALIDATION SCRIPT -----------------------------//
// Validation Script
// Developed By: Alka Softech
// Contact: AlkaSoftech@GMAIL.com
// Copyright: Alka Softech, All Rights Reserved.
// Illegal Copying, using without writen permissions is not permitted.
// Its an offence to use such scripts. If found, leads to court for heavy fine.
// ----------------- COPYRIGHTED SCRIPT, DO NOT USE ILLEGALY ---------------------------//
//****************************************************************************************

//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 "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")
   }
}

//Mobile Number (9) Validate
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')
            {
                
                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;
            }
            
        }
}

     
//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;					
}
// Default - Overrided Trim Func
function trim(string)
{
    if(string != null)
    {
	return string.replace(/^\s*|\s*$/g,"");
	}
	else
	{
	    return string
	}
} 

function ToChkSpecialChar( obj, strControl)
    {
        var strAlpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ123456789";
        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 + " will always be alphanumeric with one special character.Please Enter Valid " + strControl + ".");
               
           obj.focus();
            return false;
        }
        return true;
}

// 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;
}
    
 //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;
     }
 }
//Function to check Maxlength
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
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
function toCheckLengthOnSaveMinChar(obj,maxlength)
{   
    if(trim(obj.value).length < eval(maxlength))
    {
        obj.focus();
        return false;
    }   
}

//Function to validate from & two date comparisons
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 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 boxes with default values
function ClearBox(obj,strValueInBox)
{  
        if(trim(obj.value)==trim(strValueInBox))
        {
            obj.value="";    
        }
    }


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.focus();
			return false;
		}
	}
	return true;
} 

//Trims SPC Values Faster
function FasterTrim(str) 
{
	var	str = str.replace(/^\s+/, "").replace(/\s+$/, "");
	return str;
}
    
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;
}


//Enables Post Back On Objects - Ajax
function enablePostBack(objCtrl,objArgu)
{
       __doPostBack(objCtrl,objArgu);
}

//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;
            }            
        }        
      }
      if(IsRemoveSpan(divobj))
            {
            objHDN.value = parseInt(objHDN.value) - 1;
            return false;
            }
    }
    
///function to check whether minimum no of characters has been entered or not
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 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;
            }
         }
}	


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;
            }		
	}
	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;
            }           
	}
	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;
        }		
	}
	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;
        }		
	}
	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;
        }    	
	}
	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;
        }
 }	
}

//Leap Year Check
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 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();
                }
            }
        }      

// Function to Validate Entered Date With Current Date !>
function ValidateWithCurrDate(PayChqDate)
{

    var objPayChqDate = PayChqDate.value;    
    arrPayChqDate =  objPayChqDate.split("/");
    var myDate = new Date(arrPayChqDate[1]+"/"+arrPayChqDate[0]+"/"+arrPayChqDate[2]);    
    
    var objToday = new Date();            
    if(myDate > objToday)
     {         
         return false;
     }
}


// Function to Validate Entered Date With Current Date !<
function ValidateNotLessThanCurrDate(PayChqDate)
{
    var objPayChqDate = PayChqDate.value;    
    arrPayChqDate =  objPayChqDate.split("/");
    var myDate = new Date(arrPayChqDate[1]+"/"+arrPayChqDate[0]+"/"+arrPayChqDate[2]);    
    
    var objToday = new Date();            
    if(myDate < objToday)
     {         
         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;
}    

// View Server Image // Hidden CS Logic
function ViewImage(strTitle,hdnProductLogo,FolderName)
    {
    strHidden = 'ctl00_ContentPlaceHolder1_' + hdnProductLogo;
       objhdnProductLogo = document.getElementById(strHidden); 
       
       var url='../imgDefault.aspx?LogoPath=' + objhdnProductLogo.value +"&Title=" + strTitle + "&FolderName=" + FolderName;         
       mywin =window.open(url,"newwin","left=150,top=5,width=400,height=400,scrollbars=yes");         
       if(mywin!=null)
            {
            mywin.focus();
            }
       else
            {
                alert("Your popup's are blocked. Please unblock your popup's.");
            }   
       return false;
}


//--------------------------- JAVASCRIPT VALIDATION ENDS HERE -------------------------//
//-----------Illegal usage of any block of above script is not allowed-----------------//