// JavaScript Document
NS4=0
function ustalpoz(nazwa, event)
{
      pole=eval("document.f1."+nazwa);

      buduj(pole);
if (NS4) {
	x=e.pageX;
	y=e.pageY;
	}
else{
	x=event.clientX+document.body.scrollLeft;
	y=event.clientY+document.body.scrollTop;
	
	document.getElementById("kalendarz").style.top=y
	document.getElementById("kalendarz").style.left=x
	document.getElementById("kalendarz").style.display="block"
	}
}
function kal_zam()
{

	document.getElementById("kalendarz").style.display="none"
}


//zmienne
//aktualne
teraz=new Date()
a_rok=teraz.getFullYear()
a_mie=teraz.getMonth() //miesiac -1
a_dzt=teraz.getDay(); if (a_dzt==0){a_dzt=7} //dzien w tygodniu - nr
a_dzm=teraz.getDate()  //dzien w miesiacu +3 dni na potwierdzenie

zapam_rok=a_rok
zapam_mie=a_mie


//nazwy miesiecy
mies_nazwa=new Array("Styczeń","Luty","Marzec","Kwiecień","Maj","Czerwiec","Lipiec","Sierpień","Wrzesień","Październik","Listopad","Grudzień")
dni_nazwa=new Array("Pon","Wto","Sro","Czw","Pia","Sob","Nie")

//okreslenie ilosci dni w mies
//czy rok przestepny
function leapYear(year) {
if (year % 4 == 0) // basic rule
return true // is leap year
/* else */ // else not needed when statement is "return"
return false // is not leap year
}

function getDays(month, year) {
// create array to hold number of days in each month
var ar = new Array(12)
ar[0] = 31 // Styczen
ar[1] = (leapYear(year)) ? 29 : 28 // Luty
ar[2] = 31 // Marzec
ar[3] = 30 // Kwiecien
ar[4] = 31 // Maj
ar[5] = 30 // Czerwiec
ar[6] = 31 // Lipiec
ar[7] = 31 // Sierpien
ar[8] = 30 // Wrzesien
ar[9] = 31 // Pazdziernik
ar[10] = 30 // Listopad
ar[11] = 31 // Grudzien

// return number of days in the specified month (parameter)
return ar[month]
}


function buduj(pole){
//poczatek mies.
start=new Date()
start.setFullYear(a_rok, a_mie, 1)
s_dzt=start.getDay(); if (s_dzt==0){s_dzt=7} //okresla kiedy wypada I dzien mies.
//alert (s_dzt)
wierszy= Math.ceil((getDays(a_mie, a_rok)+s_dzt-1)/7)

tab='<table width="150" border="0" cellpadding="1" cellspacing="1" bgcolor="#EBEBEB"><tr class="nag">';
for (i=0; i<dni_nazwa.length; i++){tab+='<td>'+dni_nazwa[i]+'</td>'}
tab+='</tr>';
//glówna czesc tworzaca komórki z dniami
licz=1
	for (i=1; i<=wierszy; i++)
	{
	tab+='<tr class="stdkal">'
		for (j=1; j<=7; j++)
		{
		if (j==6){nap_class="class=sobota"}
		if (j==7){nap_class="class=niedziela"}
		if (j!=7 && j!=6){nap_class="class=stdkal"}
		if ((i==1 && j<s_dzt) || licz>getDays(a_mie, a_rok)){tab+='<td '+nap_class+' width=22>&nbsp</td>'; continue}
			if(a_rok==zapam_rok && a_mie==zapam_mie && licz<a_dzm)
			{
			tab+='<td '+nap_class+' width=22 style="color: #CCCCCC;">'+licz+'</td>'
			}else{
			tab+='<td '+nap_class+' onmouseover="this.style.borderColor=\'red\'" onmouseout="this.style.borderColor=\'\'" width=22 style="cursor: hand;" onclick="wynik('+licz+')" ; onClick="ustalpoz(pole)">'+licz+'</td>'
			}
		licz++
		}
	tab+='</tr>'
	}
tab+='</table>';
document.getElementById("w_rok").innerHTML=a_rok
document.getElementById("w_mie").innerHTML=mies_nazwa[a_mie]
document.getElementById("w_tab").innerHTML=tab

}

function zm_rok(op){
if (op==0)	{a_rok--;
			if (a_rok<=zapam_rok && a_mie<zapam_mie){a_rok=zapam_rok; a_mie=zapam_mie}
			if (a_rok<zapam_rok){a_rok=zapam_rok}
			}
if (op==1){a_rok++}
buduj()
}

function zm_mie(op){
if (op==0)	{a_mie--;
			if (a_mie<zapam_mie && a_rok==zapam_rok){a_mie=zapam_mie}
			if (a_mie<0 && a_rok>zapam_rok){a_mie=11; a_rok--}
			}
if (op==1)	{a_mie++
			if (a_mie>11){a_mie=0; a_rok++}	
			}
buduj()			
}

function wynik(nr,nazwa){
t_mie=a_mie //przypisanie, zeby nie popsuc aktualnej daty
t_mie++
if (t_mie<10){t_mie="0"+t_mie}
if (nr<10){nr="0"+nr}
zwrot=a_rok+"-"+t_mie+"-"+nr
pole.value=zwrot;
kal_zam()
}
