    function trim(val)
    {
        var newval='';
        for(i=0; i<val.length; i++)
        {
            if(val.charAt(i)!=' ')
              newval=newval+val.charAt(i);
        }
        return newval;
    }
        
    function cint(val)
    {
        if(isNaN(val) || trim(val)=='')  
            retval=0;
        else
            retval=parseInt(val);
        
        return retval;
    }
    
    function cfloat(val)
    {
        if(isNaN(val) || trim(val)=='')  
            retval=0;
        else
            retval=parseFloat(val);
        
        return retval;
    }
    
    function toUpper(txt)
    {
        if(event.keyCode>=97 && event.keyCode<=122)
          event.keyCode=event.keyCode-32;
    }
	
    function toLower(txt)
    {
        if(event.keyCode>=65 && event.keyCode<=90)
            event.keyCode=event.keyCode+32;
    }
    
    function allowonlynumeric(txt)
    {
        var val=txt.value;
        var dotfound=false;
        for(i=0; i<=val.length; i++)
        {
          //alert(val.charAt(i));	
          if(val.charAt(i)==".")
          {
            dotfound=true;
            break;
          }
        }
        
        if((event.keyCode>=48 && event.keyCode<=57) || (dotfound==false && event.keyCode==46))
          ;
        else
        {
          event.keyCode=0;
          return;
        }
        
        txt.focus();
    }
    
    function DisableEnterKey() 
    {        
        var node = (event.target) ? event.target : ((event.srcElement) ? event.srcElement : null);
        if(event.keyCode==13  && (node.type!="submit" && node.type!="reset" && node.type!="image" && node.type!="button")) event.keyCode=9; 
        
				//if(event.keyCode==27  && (node.type!="submit" && node.type!="reset" && node.type!="image" && node.type!="button")) event.keyCode=9;
				
        /*
				if(event.keyCode==27  && (node.type!="submit" && node.type!="reset" && node.type!="image")) 
				{
						var form1=document.activeElement.form;
						for(i=1; i<form1.elements.length; i++)
						{
								if(form1[i]==document.activeElement)
								{
											form1.elements[i-1].focus();
											break;
								}
						}
				}*/
				
    } 



/**
 * DHTML date validation script for dd/mm/yyyy. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */
// Declaring valid date character, minimum year and maximum year
	var dtCh= "/";
	var minYear=1900;
	var maxYear=2100;

	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 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 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(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
	}
	
	function numericScroll (oTextbox) 
	{
    //oEvent = EventUtil.formatEvent(oEvent);
    var iValue = oTextbox.value.length == 0 ? 0 :parseInt(oTextbox.value);
    
    var iMax = oTextbox.getAttribute("max");
    var iMin = oTextbox.getAttribute("min");

    if (event.keyCode == 38) 
		{
        if (iMax == null || iValue < iMax) 
				{
            oTextbox.value = (iValue + 1);
        }
    } 
		else if (event.keyCode == 40)
		{
        if (iMin == null || iValue > iMin) 
				{
            oTextbox.value = (iValue - 1);
        }
    }
	}

