function FixDate (date) {
var dHold = date;
var fixstr="";
fixstr=date.replace("-","/");
fixstr=fixstr.replace("-","/");
date=fixstr;

if (date.length == 6) {
  if (date.indexOf ("/") == -1) {
    retdate=date.substring (0,2) + "/" + date.substring (2,4) + "/" + date.substring (4,6);
    date=retdate
    dHold=0
  }
}
if (date.length != 10) {
  var daypos = 0
  var yrpos = 0
  var month = ""
  var day = ""
  var year = ""
  var retdate = ""
  var yrprefix=""
  if (date.charAt (1) == "/") {
    month = "0" + date.charAt (0)
    daypos = 2
  }
  else {
    if (date.charAt (2) == "/") {
       month = date.substring (0, 2) 
       daypos = 3
    }
  }

  if (daypos > 0) {
    if (date.charAt (daypos + 1) == "/") {
      day = "0" + date.charAt (daypos)
      yrpos = daypos + 2
    }
    else {
      if (date.charAt (daypos + 2) == "/") {
        day=date.substring (daypos, daypos+2)
        yrpos = daypos+3
      }
    }
  }

  if (yrpos > 0) {
    // alert("Equaition: " +(date.length-yrpos))
    if (((date.length - yrpos) >0) && ((date.length-yrpos)<4)) {
      year = date.substring (yrpos,yrpos + 2)
      if (year < 39) {
        yrprefix = "20" 
      }
      else {
        yrprefix = "19" 
      }
      if ((year<10) && (year.length<2)){
        year="0"+year
      }
      year=yrprefix+year;
    } 
    else { 
      if ((date.length - yrpos) == 4) {
        year = date.substring (yrpos,yrpos + 4)
      }
    }
  }    
  if (day.length == 0 || month.length == 0 || year.length == 0) {
      //retdate=date
  }
  else {
    retdate = month + "/" + day + "/" + year
  }
}
else {
  retdate = date
}
    
if (date.length == 8) {
  if (date.indexOf ("/") == -1) {
    retdate=date.substring (0,2) + "/" + date.substring (2,4) + "/" + date.substring (4,8);
  }
}
if (date.length > 0) {
  if (checkdate (retdate) == 0) {
    // Try to add days to calculate date
    retdate = addDays (dHold);
    // Recheck date
    if (checkdate (retdate) == 0) {
      alert (retdate + " is not a valid date");
    }
  }
}
return retdate

}  /* End funtion */

////////check date function
function checkdate(date) {
   var err=0
   if (date.length != 10) err = 1
   b = date.substring (0, 2)   // month
   c = date.substring (2, 3)   // '/'
   d = date.substring (3, 5)   // day
   e = date.substring (5, 6)   // '/'
   f = date.substring (6, 10)   // year

   if (b < 1 || b > 12) err = 1
   if (c != '/') err = 1
   if (d < 1 || d > 31) err = 1
   if (e != '/') err = 1
   if (f < 1900 || f > 2500) err = 1
   if (b ==4 || b == 6 || b == 9 || b == 11){
      if (d==31) err=1
   }
   if (b == 2){
      var g = parseInt (f/4)
      if (isNaN (g)) {
         err=1
      }
      if (d > 29) err=1
      if (d == 29 && ((f/4) != parseInt (f/4))) err=1
   }

   for (i=0; i<date.length; i++) {
      if (date.charAt(i) < '0' || date.charAt (i) > '9'){
         if (date.charAt (i) != '/') err = 1;
      }
   }
   if (err == 1) {
      return 0;
   }
   else {
      return 1;
   }
} /* End function */

/* ADD DAYS FUNCTION */
function addDays (indate) {
   var today = new Date ();
   var month = today.getMonth() + 1;
   var day = today.getDate();
   var year = today.getFullYear ();
   var bNeg = 0;
   var iDays = "";
   var intDay = 0;
   var intMonth = 0;
   var intYear = 0;
   var intAdd = 0;
   var defDate;
   var test;
   var iwork = 0;
   var daynum = new Array (0,31,28,31,30,31,30,31,31,30,31,30,31);

   for (i=0;i<indate.length;i++) {
      test = indate.substring (i, i + 1);
      if (test < '0' || test > '9') {
         if (test == '-' && i == 0) {
            bNeg = 1;
         } else {
            return indate;
         }
       } else {
          iDays = iDays + test;
           }
   }
       if (iDays.substring (0,1) == "0" && iDays.length > 1) {iDays = iDays.substring (1,2);}

// parseInt thinks that a string starting with '08' is an octal number
        if (iDays == '08') {
            intAdd = 8;
        } else {
            intAdd = parseInt (iDays);
        }
        if (day == '08') {
            intDay = day;
        } else {
            intDay = day;
        }
        if (month == '08') {
            intMonth = 8;
        } else {
            intMonth = month;
        }
   intYear = year;  

   /* Add days */
   if (bNeg == 0) {
    
      intDay = intDay + parseInt (intAdd);
            while (intDay > daynum [intMonth]) {
         intDay = intDay - daynum [intMonth];
         intMonth = intMonth + 1;
         if (intMonth > 12) {
            intYear = intYear + 1;
            intMonth = 1;
         }
      }
   } else {
      intDay = intDay - parseInt (intAdd);
      while (intDay < 1) {
         intMonth = intMonth - 1;
         if (intMonth < 1) {
            intYear = intYear - 1;
            intMonth = 12;
         }
         intDay = intDay + daynum [intMonth];
      }
   }
   if (intMonth < 10) {
      defDate = "0" + intMonth;
   } else {
      defDate = intMonth;
   }
   if (intDay < 10) {
      defDate = defDate + "/0" + intDay;
   } else  {
      defDate = defDate + "/" + intDay;
   }
   defDate = defDate + "/" + intYear;
   return defDate;
}
function validatedt(indate) {
    var currentdate=indate.value;
    var newdate=FixDate(indate.value);
    if (newdate.length()<10) {
        alert('Invalid date');
        indate.focus();
    }
    else     {
      indate.value=newdate;
    }
    return indate;
}

function compDates (sDate1, sDate2) {
   // This function takes in 2 valid dates.  It returns -1 if date1 < date2; 0 if they are equal
   //    and 1 if date1 > date2 
   var sWork1 = "";
   var sWork2 = "";
   if (sDate1.length == 10) {
      sWork1 = sDate1.substring (6,10) + sDate1.substring (0,2) + sDate1.substring (3,5);
   }
   if (sDate1.length == 8) {
      sWork1 = sDate1.substring (4,8) + sDate1.substring (0,2) + sDate1.substring (2,4);
   }

   if (sDate2.length == 10) {
      sWork2 = sDate2.substring (6,10) + sDate2.substring (0,2) + sDate2.substring (3,5);
   }
   if (sDate2.length == 8) {
      sWork2 = sDate2.substring (4,8) + sDate2.substring (0,2) + sDate2.substring (2,4);
   }

   if (sWork1 < sWork2) return -1;
   if (sWork1 == sWork2) return 0;
   if (sWork1 > sWork2) return 1;
}

function getToday () {
   var today = new Date ();
   var sToday = "";
   var sMonth = today.getMonth() + 1;
   var sDay = today.getDate();
   var sYear = today.getFullYear ();
   
   if (sMonth < 10) {
   sToday = "0" + sMonth + "/" ;
   } else {
   sToday = sMonth + "/" ;
   }
   if (sDay < 10) {
   sToday = sToday + "0" + sDay + "/"  + sYear;
   } else {
   sToday = sToday + sDay + "/" + sYear;
   }

   return sToday;
}