        // Počty dní v jednotlivých měsících
        // Pro jednoduchost má únor vždy 28 dní
        DayCount = [31, 28, 31, 30, 31, 30,
                    31, 31, 30, 31, 30, 31];
        // Názvy dní
        Days = ["Po", "Út", "St", "Čt", "Pá", "So", "Ne"];

        // Názvy měsíců
        Months = ["Leden", "Únor", "Březen", "Duben",
                  "Květen", "Červen", "Červenec", "Srpen",
                  "Září", "Říjen", "Listopad", "Prosinec"];

        // Funkce pro generování kalendáře
        function GenerateCal (Today){
          // Počet dní v měsíci
          var DC = DayCount[Today.getMonth()];

          // Hlavička s názvem měsíce a rokem
          Str = '<TABLE Cols="7" Border="0" Rules="All" style="font-size:8pt;">';
          Str += '<TR><TH Colspan="7"><B>';
          Str += Months[Today.getMonth()]+' '+
                 Today.getFullYear();
          Str += '</B></TR>';
          Str += '<TR>';

          // Řádek obsahující názvy dní v týdnu
          for (i=0; i<Days.length; i++){
            Str += '<TD><B>';
            if (i>4) Str += '<FONT Color="#C1CBEF">';
            Str += Days[i];
            if (i>4) Str += '</FONT>';
            Str += '</B></TD>';
          }
          Str += '</TR>';

          // Zjištění pozice prvního dne v měsíci
          // Neboli v kterém sloupci bude jednička
          var PomDay = new Date (Today);
          PomDay.setDate (1);
          FirstDay = (6 + PomDay.getDay()) % 7;

          // Prazdné buňky před prvním dnem
          Str += '<TR>';
          for (i=0; i<FirstDay; i++){
            Str += '<TD> </TD>';
          }

          // Jednotlivé dny měsíce
          Col = FirstDay;
          for (i=1; i<=DC; i++){
            if (Col>6){
              // Přechod na nový řádek tabulky
              Str += '</TR><TR>';
              Col = 0;
            }
            Str += '<TD>';
            if (Col>4) Str += '<FONT Color="#C1CBEF">';
            if (i == Today.getDate()) Str += '<b><font color="red">';
            Str += i;
            if (i == Today.getDay()) Str += '</font></b>';
            if (i>4) Str += '</FONT>';
            Str += '</TD>';
            Col++;
          }

          // Prázdné buňky po poslením dni měsíce
          for (i=0; i<=(6-Col); i++){
            Str += '<TD> </TD>';
          }
          Str += '</TR>';
          Str += '</TABLE>';

          // Zapsání kalendáře do stránky
          document.write (Str);
        }

        // Hlavní funkce generující kalendář
        // pro aktuální den
        function Generate(){
          GenerateCal(new Date());
        }
     
