var cal_sel=new Date();
var cal_field=0;



var cal_mname=new Array();
var cal_dname=new Array();

cal_mname[0]='Styczeń';
cal_mname[1]='Luty';
cal_mname[2]='Marzec';
cal_mname[3]='Kwiecień';
cal_mname[4]='Maj';
cal_mname[5]='Czerwiec';
cal_mname[6]='Lipiec';
cal_mname[7]='Sierpień';
cal_mname[8]='Wrzesień';
cal_mname[9]='Październik';
cal_mname[10]='Listopad';
cal_mname[11]='Grudzień';

cal_dname[0]='Nd';
cal_dname[1]='Pn';
cal_dname[2]='Wt';
cal_dname[3]='Śr';
cal_dname[4]='Cz';
cal_dname[5]='Pt';
cal_dname[6]='So';
cal_dname[7]='Nd';

var cal_fdow=1;
var cal_field='';

function closecal(id)
{
	document.getElementById(id+'_cal').innerHTML='';
	document.getElementById(id+'_cal').style.display='none';
}

function launchcal(id)
{

	
	if (cal_field!='') return;
	var i=document.getElementById(id);
	if (i==null) return;

	cal_field=id;

	var t=i.value.split('-');

	
	
	var yy=parseInt(t[0]);
	var mm=parseInt(t[1]);
	var dd=parseInt(t[2]);
	mm--;

	//alert(yy+','+mm+','+dd);

	var td=new Date();
	//cal_sel.setFullYear(yy,mm,dd);



	if (isNaN(mm) || isNaN(yy) || isNaN(dd))
	{
		cal_sel=td;
		i.value='';
	}
	else
	{
		cal_sel.setFullYear(yy,mm,dd);
	}

	document.getElementById(id+'_cal').style.display='';
	make_cal(id+'_cal',cal_sel.getFullYear(),cal_sel.getMonth());

}




function make_cal(id,year,month)
{
	var d=new Date();
	var begin=true;
	var dow=0;
	var r='';
	var cl='';
	var today=new Date();
	var style='';
	var rmonth=0;

	if (month==12)
	{
		month=0;
		year++;
	}
	if (month==-1)
	{
		month=11;
		year--;
	}
	
	d.setFullYear(year,month,1);
	var ml=d.getMonth()-1;
	var mr=d.getMonth()+1;
	r+='<div class="cal_header" style="text-align: right;">';
	r+='<div style="cursor:pointer; margin: 2px;" onClick="closecal(cal_field);cal_field=\'\';">[X]</div>';
	r+='<div class="cal_header_icon" onclick="make_cal(\''+id+'\','+year+','+ml+');">&lt;</div>';
	
	r+='<div class="cal_header_txt">'+cal_mname[d.getMonth()]+' '+d.getFullYear()+'</div>';
	
	r+='<div class="cal_header_icon" onclick="make_cal(\''+id+'\','+year+','+mr+');">&gt;</div>';
	r+='</div>';

	for (i=cal_fdow;i<=6+cal_fdow;i++)
	{
		if (i==cal_fdow)
			r+='<div class="cal_cell_cl_empty">'+cal_dname[i]+'</div>';
		else
			r+='<div class="cal_cell_empty">'+cal_dname[i]+'</div>';
		
	}
	
	
	for (true;d.getMonth()==month;d.setDate(d.getDate()+1))
	{
		dow=d.getDay();
		if (dow==0&& cal_fdow==1) dow=7;
		if (begin)
		{
			for (var i=cal_fdow; i<dow; i++)
			{
				if (i==cal_fdow)
					r+='<div class="cal_cell_cl_empty">&nbsp;</div>';
				else
					r+='<div class="cal_cell_empty">&nbsp;</div>';
			}
			begin=false;
		}
		if (dow==cal_fdow)
		{
			cl='cal_cell_cl';
		}
		else
		{
			cl='cal_cell';
		}
		style='';
		if (today.getMonth()==d.getMonth() && today.getDate()==d.getDate() && today.getFullYear()==d.getFullYear())
		{
			cl='cal_cell_today';
		}
		if (cal_sel.getMonth()==d.getMonth() && cal_sel.getDate()==d.getDate() && cal_sel.getFullYear()==d.getFullYear())
		{
			style='font-weight: bold;';
		}
		rmonth=d.getMonth()+1;
		r+='<div onclick="dayclick('+d.getFullYear()+','+rmonth+','+d.getDate()+');" class="'+cl+'" style="'+style+'">'+d.getDate()+'</div>';	
		//if (dow==7) r+='<br>';
	}
	document.getElementById(id).innerHTML=r;
	
}



function dayclick(year,month,day)
{

	
	if (month<10) month='0'+month;
	if (day<10) day='0'+day;
	var r=year+'-'+month+'-'+day;

	closecal(cal_field);
	
	document.getElementById(cal_field).value=r;
	cal_field='';
	

}


function cal_make_ico(id)
{

document.write('<img src="ico/cal.png" style="cursor: pointer;" onclick="launchcal(\''+id+'\');"><div id="'+id+'_cal" class="cal" style="display: none;"></div>');

}

