
  // Non-Leap year Month days..
  days_in_month = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
  // Leap year Month days..
  days_in_month_ly = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];

  function get_days_in_month(mo, yr) {
    /* Check for leap years */
    if ((yr % 4) == 0) {
      if ((yr % 100) == 0 && (yr % 400) != 0)
        return days_in_month[mo];
      return days_in_month_ly[mo];
    } else
      return days_in_month[mo];
  }

  function getDaysOfMonth() {
    var month = document.getTime_form.month.selectedIndex;
    var year = document.getTime_form.year.options[document.getTime_form.year.selectedIndex].text;
    var days = get_days_in_month(month,year);

    var selIndex = document.getTime_form.day.selectedIndex;

    if(document.getTime_form.day.options.length > days) {
      for(i=0;i<document.getTime_form.day.options.length;i++) {
        document.getTime_form.day.options[i] = null;
      }
    }

    for(i=0;i<days;i++) {
      var newOption = new Option(i+1,i+1);
      document.getTime_form.day.options[i] = newOption;
    }

    if(selIndex < document.getTime_form.day.options.length) {
      document.getTime_form.day.options[selIndex].selected = true;
    }
    else {
      document.getTime_form.day.options[document.getTime_form.day.options.length-1].selected = true;
    }
  }

  function setReplay() {
    var action = "&Action=getdelay";
    var year = document.getTime_form.year.options[document.getTime_form.year.selectedIndex].text;
    var month = eval(document.getTime_form.month.selectedIndex+1);
    var day = eval(document.getTime_form.day.selectedIndex+1);
    var hour = document.getTime_form.hour.selectedIndex;
    var minute = document.getTime_form.minute.options[document.getTime_form.minute.selectedIndex].text;
    var localTime = action + "&year="+year+"&month="+month+"&day="+day+"&hour="+hour+"&minute="+minute;

    document.A.setReplayTime(localTime);

    var dateString = "data/fxe/"+year+"/"+month+"/"+day+"/"+hour+"/"+minute+".zip";
    var dataExists = document.A.dataExists(dateString);

    if(dataExists == "FUTURE") {
      alert("You have choosen a date in advance of the available data.  Defaulting to latest available data.");
    }
    else if(dataExists == "FALSE") {
      alert("No data available for date/time chosen.  Please choose another date/time.");
    }
  }

  function resetTime(runReplay) {
    var today = new Date();
    var year = today.getFullYear();
    var month = today.getMonth();
    var day = today.getDate();
    var hours = today.getHours();
    var minutes = today.getMinutes();
    document.getTime_form.month.options[month].selected=true;
    var yearindex = year - 2009;
    document.getTime_form.year.options[yearindex].selected=true;

    getDaysOfMonth();

    // Reset selected for Netscape 6 bug
    var selIndex = document.getTime_form.day.selectedIndex;
    document.getTime_form.day.options[selIndex].selected=false;

    document.getTime_form.day.options[day-1].selected=true;
    document.getTime_form.hour.options[hours].selected=true;
    document.getTime_form.minute.options[minutes].selected=true;
    if(runReplay) {
      document.A.setNoReplay();
    }
  }

