//
// funkcja wyswietlajaca maly kalendarz
//
// przykład uzycia:
// WriteCalendar(2002, 10, "/cgi-bin/ioffice.cgi?cmd=START_PAGE", "/cgi-bin/ioffice.cgi?cmd=CALENDAR")
//
function WriteCalendar()
{
  // tablica nazw miesiecy
  var aMonthNames = new Array(
    "Styczeń",
    "Luty",
    "Marzec",
    "Kwiecień",
    "Maj",
    "Czerwiec",
    "Lipiec",
    "Sierpień",
    "Wrzesień",
    "Październik",
    "Listopad",
    "Grudzień" );

  // tablica z iloscia dni w miesiacu
  var aMonthDays = new Array(12);
  aMonthDays[0]=31;
  aMonthDays[1]=28;
  aMonthDays[2]=31;
  aMonthDays[3]=30;
  aMonthDays[4]=31;
  aMonthDays[5]=30;
  aMonthDays[6]=31;
  aMonthDays[7]=31;
  aMonthDays[8]=30;
  aMonthDays[9]=31;
  aMonthDays[10]=30;
  aMonthDays[11]=31;

  // tablica skrotow nazw dni
  var aSDayName = new Array("Pn", "Wt", "Śr", "Cz", "Pt", "So", "Nd");

  var dToday = new Date();
  var nCalDay = dToday.getDay();
  var nMonth = dToday.getMonth();
  var nYear = dToday.getFullYear();
  var dStartDate = new Date(nYear, nMonth, 1);
  var nStartDay = dStartDate.getDay();
  var classStr;

  // alert(dStartDate.getFullYear() + " " + dStartDate.getMonth() + " " + dStartDate.getDate());
  // alert("nMonth=" + nMonth + " nStartDay = " + nStartDay + "  nCalDay = " + nCalDay + " dzien " + dToday.getDate());
  // zamiana niedzieli z 0 na 6
  nStartDay--;
  if (nStartDay < 0)
    nStartDay = 6;

  document.write("<table border=\"0\" bgcolor=\"#ffffff\" cellspacing=\"1\">");
  // na poczatku lista nazw dni
  document.write("<tr>");
  for (i = 0; i <= 6; i++)
  {
    document.write("<td class=\"CalendarHead\">");
    document.write (aSDayName[i] + " ");
    document.write("</td>");
  }
  document.write ("</tr>");

  // ewentualne przesuniecie w wierszu 1
  document.write("<tr>");
  for (i = 0; i < nStartDay; i++)
  {
    document.write("<td class=\"CalendarCell\">");
    document.write ("&nbsp;");
    document.write("</td>");
  }
  nCurrDay = nStartDay;
  for (i = 1; i <= aMonthDays[nMonth]; i++)
  {
    classStr = "CalendarCell";
    // koniec wiersz dla niedzieli
    if (nCurrDay > 6)
    {
      nCurrDay = 0;
      document.write ("</tr>");
      document.write ("<tr>");
    }

    if (nCurrDay == 6)
    {
      classStr = "CalendarRight";
    }

    if (dToday.getDate() == i)
    {
      document.write("<td class=\"" + classStr + "\" align=\"right\" style=\"background-color: #FF0000; color: #FFFFFF; \">");
      document.write ("<b>" + i + "</b>");
    }
    else
    {
      document.write("<td class=\"" + classStr + "\" align=\"right\">");
      document.write (""+ i + "");
    }

    document.write("</td>");

    nCurrDay++;
  }

  // ewentualne uzupelnienie ostatniego wiersza
  for (i = nCurrDay; i < 7; i++)
  {
    document.write("<td class=\"CalendarCell\">");
    document.write ("&nbsp;");
    document.write("</td>");
  }

  // pusty wiersz z borderem top
  document.write ("<tr height=\"2\">");
  for (i = 0; i < 7; i++)
  {
    document.write("<td class=\"CalendarBottom\">");
    // document.write ("&nbsp;");
    document.write("</td>");
  }
  document.write ("</tr></table>");
}
