function findCheckedValue() {
   var value = "";
   date_option = document.getElementById("date_option");
   var date_option_ix = date_option.selectedIndex;
   var date_value = date_option.options[date_option_ix].value;
   return date_value;
}
function initialize() {
   today=new Date();
   document.find_event.from_date.value = formatDate(today);
   document.find_event.to_date.value = formatDate(today);
}
function formatDate(date) {
   var day  = date.getDate();
   var month = date.getMonth()+1;
   var year = date.getFullYear();
   return month + "/" + day + "/" + year;
}
function dateInput() {
   date_option = document.find_event.date.value;
   if (date_option == "R") {
      show('choose_dates');
      calstart();
   }
   else {
      hide('choose_dates');
   }
}
function enableRange() {
   document.find_event.from_date.disabled=false;
   document.find_event.to_date.disabled=false;
   document.forms[0].from_date.focus();
}
function disableRange() {
   document.find_event.from_date.disabled=true;
   document.find_event.to_date.disabled=true;
   checked_date_value = findCheckedValue();
   today=new Date();
   if (checked_date_value == "T") {
      document.find_event.from_date.value = formatDate(today);
      document.find_event.to_date.value = formatDate(today);
   }
   else if (checked_date_value == "N") {
      tomorrow=new Date();
      tomorrow.setTime(today.getTime() + 1 * 24 * 60 * 60 * 1000);
      document.find_event.from_date.value = formatDate(tomorrow);
      document.find_event.to_date.value = formatDate(tomorrow);
   }
   else if (checked_date_value == "W") {
      weekDay=today.getDay();
      start_date=new Date();
      end_date=new Date();
      if (weekDay >= 1 && weekDay <= 4) {
         start_date.setTime(today.getTime() + ((5-weekDay) * 24 * 60 * 60 * 1000));
         end_date.setTime(start_date.getTime() + 2 * 24 * 60 * 60 * 1000);
      }
      else if (weekDay == 5) {
         start_date.setTime(today.getTime());
         end_date.setTime(start_date.getTime() + 2 * 24 * 60 * 60 * 1000);
      }
      else if (weekDay == 6) {
         start_date.setTime(today.getTime());
         end_date.setTime(start_date.getTime() + 1 * 24 * 60 * 60 * 1000);
      }
      else if (weekDay == 0) {
         start_date.setTime(today.getTime());
         end_date.setTime(today.getTime());
      }
      document.find_event.from_date.value = formatDate(start_date);
      document.find_event.to_date.value = formatDate(end_date);
   }
   else if (checked_date_value == "M") {
      start_date=new Date();
      start_date.setTime(today.getTime());
      var MonthDays = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
      curr_month = today.getMonth();
      curr_year = today.getFullYear();
      last_dom = MonthDays[curr_month];
      if (curr_month == 1) { // February
         if (curr_year%400==0 || (curr_year%4 == 0 && curr_year%100!=0) ) last_dom +=1;
      }
      end_date = new Date(curr_year,today.getMonth(),last_dom);
      document.find_event.from_date.value = formatDate(start_date);
      document.find_event.to_date.value = formatDate(end_date);
   }
   else if (checked_date_value == "S") {
      end_date=new Date();
      end_date.setTime(today.getTime() + 6 * 24 * 60 * 60 * 1000);
      document.find_event.from_date.value = formatDate(today);
      document.find_event.to_date.value = formatDate(end_date);
   }
   else {
      document.find_event.from_date.value = "";
      document.find_event.to_date.value = "";
   }
}
function validateEventSearchForm() {
   date_value = findCheckedValue();
   from_date = document.find_event.from_date.value;
   from_date = new String(from_date);
   from_date = from_date.replace( /^\s+/g, "" );// strip leading
   if (date_value == "R" && from_date == "") {
      alert("Enter from date in format MM/DD/YYYY.");
      document.find_event.from_date.focus();
      return false;
   }
   if (date_value == "R" && document.find_event.from_date.value != "" && !validateDate(document.find_event.from_date.value)) {
      alert("From date is not valid. Enter date in format MM/DD/YYYY.");
      document.find_event.from_date.focus();
      return false;
   }
   if (date_value == "R" && document.find_event.to_date.value != "" && !validateDate(document.find_event.to_date.value)) {
      alert("To date is not valid. Enter date in format MM/DD/YYYY.");
      document.find_event.to_date.focus();
      return false;
   }
   if (date_value == "R" && document.find_event.from_date.value != "" && document.find_event.from_date.value != "mm/dd/yyyy" &&
            document.find_event.to_date.value != "" && document.find_event.to_date.value != "mm/dd/yyyy" && 
            !isGreaterThanEqualTo(document.find_event.from_date.value, document.find_event.to_date.value)) {
      alert("To date should be on or after from date");
      document.find_event.to_date.focus();
      return false;
   }
   return true;
}
