<!-- hide

// -------------------------------------------------------
//  Javascript written by Jae Yoon			  
//  Copyright © 1995-2007, Jae Yoon. All rights reserved. 
//  You can copy the source but just keep the recognition 
//  to the programmer					  
//  Ideas are priceless, Say NO to piracy!		  
// -------------------------------------------------------


  // Dynamic Calendar

<!-- Original:  Rob Patrick (rpatrick@mit.edu) -->

function setToday() {
  var now   = new Date();
  var day   = now.getDate();
  var month = now.getMonth();
  var year  = now.getYear();

  if (year < 100) { year += 1900; }
  else { year += 2000; }
<!-- static 2007--->
//  year = 2007;
  year = today.getFullYear();
    this.focusDay = day;
    document.calControl.month.selectedIndex = month;
    document.calControl.year.value = year;
    displayCalendar(month, year);
}

function isFourDigitYear(year) {
  if (year.length != 4) {
    alert ("Sorry, the year must be four-digits in length.");
    document.calControl.year.select();
    document.calControl.year.focus();
  } else { return true; }
}

function selectDate() {
  var year  = document.calControl.year.value;

  if (isFourDigitYear(year)) {
    var day   = 0;
    var month = document.calControl.month.selectedIndex;
    displayCalendar(month, year);
    }
}

function setPreviousYear() {
  var year  = document.calControl.year.value;
  if (isFourDigitYear(year)) {
    var day   = 0;
    var month = document.calControl.month.selectedIndex;
    year--;
    document.calControl.year.value = year;
    displayCalendar(month, year);
    }
}
function setPreviousMonth() {
  var year  = document.calControl.year.value;
  if (isFourDigitYear(year)) {
    var day   = 0;
    var month = document.calControl.month.selectedIndex;
    if (month == 0) {
      month = 11;
    if (year > 1000) {
      year--;
      document.calControl.year.value = year;
    }
  } else { month--; }
    document.calControl.month.selectedIndex = month;
    displayCalendar(month, year);
   }
}


function setNextMonth() {
  var year  = document.calControl.year.value;
  if (isFourDigitYear(year)) {
    var day   = 0;
    var month = document.calControl.month.selectedIndex;
    if (month == 11) {
      month = 0;
      year++;
      document.calControl.year.value = year;
    } else { month++; }
      document.calControl.month.selectedIndex = month;
      displayCalendar(month, year);
  }
}


function setNextYear() {
  var year = document.calControl.year.value;
  if (isFourDigitYear(year)) {
    var day = 0;
    var month = document.calControl.month.selectedIndex;
    year++;
    document.calControl.year.value = year;
    displayCalendar(month, year);
   }
}


function displayCalendar(month, year) {       
  month = parseInt(month);
  year = parseInt(year);
  
  var i = 0;
  var days = getDaysInMonth(month+1,year);
  var firstOfMonth = new Date (year, month, 1);
  var startingPos = firstOfMonth.getDay();

  days += startingPos;
  document.calButtons.calPage.value  =   " Su Mo Tu We Th Fr Sa";
  document.calButtons.calPage.value += "\n --------------------";

  for (i = 0; i < startingPos; i++) {
    if ( i%7 == 0 ) document.calButtons.calPage.value += "\n ";
    document.calButtons.calPage.value += "   ";
  }

  for (i = startingPos; i < days; i++) {
    if ( i%7 == 0 ) document.calButtons.calPage.value += "\n ";
    if (i-startingPos+1 < 10)
    document.calButtons.calPage.value += "0";
    document.calButtons.calPage.value += i-startingPos+1;
    document.calButtons.calPage.value += " ";
  }

  for (i=days; i<42; i++)  {
    if ( i%7 == 0 ) document.calButtons.calPage.value += "\n ";
    document.calButtons.calPage.value += "   ";
  }

  document.calControl.Go.focus();
}


function getDaysInMonth(month,year)  {
  var days;
  if (month==1 || month==3 || month==5 || month==7 || month==8 || month==10 || month==12)  days=31;
  else if (month==4 || month==6 || month==9 || month==11) days=30;
  else if (month==2)  {
  if (isLeapYear(year)) { days=29; }
  else { days=28; }
  }
return (days);
}

function isLeapYear (Year) {
  if (((Year % 4)==0) && ((Year % 100)!=0) || ((Year % 400)==0)) {
  return (true);
  } else { return (false); }
}


// End -->

