﻿



/* For Calender Conntrol Functions by yakub on 7 april 2005 */

function isInteger(s){
	var i;
    for (i = 0; i < s.length; i++){   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}
function stripCharsInBag(s, bag){
	var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++){   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

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 daysInFebruary (year){
	// February has 29 days in any year evenly divisible by four,
    // EXCEPT for centurial years which are not also divisible by 400.
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}

function isValidDate(dtStr) 
	{			
			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
}
/*End Of Calender Function *//////////////



function validateText(textbox,objEvent)
{	
	var keyCode = ( navigator.appName == "Netscape" )? objEvent.which : objEvent.keyCode;
	var key = String.fromCharCode(keyCode);
	
	    if(textbox.value.length==0)
	    {	
		    if(keyCode == 32)
		    {	
		        if(navigator.appName != "Netscape")
                    objEvent.keyCode=0;	 
			    return false;
		    }
		    else
			    return true;	
	    }
	    else
	    {

		    if(isSpaceBefore(textbox,keyCode))
		 	    return true;
     	    else
            {   
                if(navigator.appName != "Netscape")
                {
                   objEvent.keyCode=0;	          
                    return false;	   
                }
                else
                {
                    if(objEvent.which!=0 && objEvent.which!=8)              
                        return false;	   
                }    
            }
	    }    
	    return true;
        
}

function isSpaceBefore(textbox,keyCode) 
{
	
	var last = textbox.value.length - 1;
			
	if ( (textbox.value.charAt(last) == " " || textbox.value.charAt(last) == "") && (keyCode==32))
		return false;
	else
		return true;
}
