var NazevDne = new Array("PO","ÚT","ST","ČT","PÁ","SO","NE"); // zahlavi kalendare
var PocetDnu = new Array(31,28,31,30,31,30,31,31,30,31,30,31); //pocet dnu v jednotlivych mesicich
var PraveTed = new Date();
var den = PraveTed.getDay();
var mesic = PraveTed.getMonth();
var datum = PraveTed.getDate();
var rok = PraveTed.getYear();
var dny = PocetDnu[mesic]; //pocet dnu v akt mesici
var skok = 0; //pomocna promenna pro vypis prazdnych bunek
var mezera; // pocet prazdnych bunek pred PRVNIM dnem v mesici
var vikend; //pocet tydnu v mesici = pocet radku tabulky (bez zahlavi)
var INS = 1; //pomocna promenna pro vypis ciselnych bunek; nabyva hodnot 1-31 resp. 30(29); 

//pro prechodny rok ma UNOR 29 dni
if (rok%4 == 0) PocetDnu[1] = 29;

//vytvoreni tabulky
document.write("<TABLE  BORDER='0' CELLSPACING='0' ALIGN='center'>");
//1.radek - zahlavi sloupcu, tj.  nazvu dnu 
document.write("<TR ALIGN='center' BGCOLOR='silver'>");
//cyklus zajistujici vypis hodnot pole NazevDne
for (i=0;i<7;i++){
	document.write("<TD WIDTH='30'><B>"+NazevDne[i]+"</B></TD>");
}
document.write("</TR>");

mezera = den - datum%7; // pocet prazdnych bunek pred PRVNIM dnem v mesici
if (mezera < 0) mezera = mezera + 7; //lepe mezera += 7
vikend = parseInt((mezera + dny)/7); //pocet vikendu; parseInt vraci cele cislo po prevedeni retezce na cislo
if ((mezera + dny)%7 != 0) vikend++; //hodnota neni delitelna 7 proto musim pridat dalsi tyden (radek)

//ostatni radky tabulky - jeden FORCYKLUS zajistuje radky, druhy sloupce
for (i=0;i<vikend;i++){
	document.write("<TR ALIGN='center'>");
	for (j=0;j<7;j++){
		document.write("<TD>");
		/*obsah bunky; nutno vypsat prazdne bky (pokud exist); jejich pocet = MEZERA. 
		Dale pak bunky s cisly 1 az 31 resp 30 (29).
		K tomu vyuzijeme promennou AKT nabyvajici vyse zminovanych hodnot. 
		Nakonec dodelat tabulku resp. radek prazdnymi bunkami.
		*/
		if (skok<mezera || INS>dny){
			document.write("&nbsp");
			skok++;
		}else{
			if (INS==datum)document.write("<B> ["+INS+"]</B>");//aktualni den bude zvyrazněn tučně
			else
			document.write(INS);
			INS++;
		}
		document.write("</TD>");
	}
	document.write("</TR>");
} 
document.write("</TABLE>");


