function Trim(s) 
{
  // Remove leading spaces and carriage returns
  while ((s.substring(0,1) == ' ') || (s.substring(0,1) == '\n') || (s.substring(0,1) == '\r'))
  {
    s = s.substring(1,s.length);
  }
 // Remove trailing spaces and carriage returns
  while ((s.substring(s.length-1,s.length) == ' ') || (s.substring(s.length-1,s.length) == '\n') || (s.substring(s.length-1,s.length) == '\r'))
  {
    s = s.substring(0,s.length-1);
  }
  return s;
}


function isNumeric(c) {
  return !(c.charCodeAt(0) < '0'.charCodeAt(0) || c.charCodeAt(0) > '9'.charCodeAt(0));
 }

function isValidDateFormat(field) {   
  isValid = (field.value.length == 10 && field.value.charAt(2) == '/' && field.value.charAt(5) == '/');
  for (i=0; isValid && i<=9; i++) {
   if (i != 2 && i != 5 && !isNumeric(field.value.charAt(i))) isValid = 0;
  }
  return isValid;
 }
 
 // Check for date validity
 function isValidDate(field)
 {  
  var DAYS_BY_MONTH = new Array(31,29,31,30,31,30,31,31,30,31,30,31);
  try {
   var arr = field.value.split("/");
   if (arr.length != 3) return false;   
   var digits = arr[2].length;
   var y = parseInt(arr[2],10);
   if (digits == 2)  // check year
    y+=(y>50)?1900:2000;// turn 03 into 2003 etc.
   else if (digits != 4) // otherwise must be 4 digits
    return false;   
   if (y < 1) return false;   
   var m = parseInt(arr[1],10); // check month
   if (m < 1 || m > 12) return false;   
   var d = parseInt(arr[0],10); // check day
   var isleap = (y % 4 == 0 && (y % 100 != 0 || y % 400 == 0));    
   if ((d < 1 ) || (d > DAYS_BY_MONTH[m-1]) || ((m == 2) && !isleap && (d > 28))) 
    return false;      
  } catch (e) {
   alert("*"+e);
   return false;
  }  
  return true;  
 }



