//if ( !Ilt )
{
    Ilt = {};
}


Ilt.CalendarAaron = function( id, idYear, idDay )
{
//    $letos=Date('Y');
    //$dnes=Date('d.m.Y');
}

//Ilt.CalendarAaron.prototype.



/*	// vybrano = string obsahujici datum, ktere se vypise do inputu
	sden = parseInt(vybrano.substring(0,2));	//pred ktery den ma byt srafovano
	if (sden==0)
		sden=parseInt(vybrano.substring(1,2));	//pred ktery den ma byt srafovano
	smes=parseInt(vybrano.substring(3,5))-1;
	if (smes==-1)
		smes=parseInt(vybrano.substring(4,5))-1;
	srok=parseInt(vybrano.substring(6,10));
	if (srok==0)
		srok=parseInt(vybrano.substring(7,10));
	if (jakrok==20)
		srok=srok+2000;

	// propojeni s datumem OD
	this.arrival = arrival;

//alert(sden+' - '+smes+' - '+srok);
	if (sden>0 && sden<32 && smes>0 && smes<13 && srok>odroku-1 && srok<doroku+1)
		this.calDate = (new Date(srok,smes,sden));
	else
		this.calDate = new Date();
	this.id=id;			//id	-1,2,3...
	this.x=x;			//x		-poloha horniho rohu pro IE4
	this.y=y;			//y		-poloha horniho rohu pro IE4
	this.nx=nx;			//nx	-poloha horniho rohu pro NN4
	this.ny=ny;			//ny	-poloha horniho rohu pro NN4
	this.kam=kam;		//kam	-kam se ma zapsat vysledny datum (jmeno inputu ve formulari FF)
	this.jakrok=jakrok;	//jakrok-2, 4, 20, 40 (yy/mm/dd, yyyy/mm/dd, dd.mm.yy, dd.mm.yyyy)
	this.skrt=skrt;		//skrt	-zda maji byt dny pred aktualnim dnem sktrle
	this.lang=lang;		//jazyk pro kalendar
//	this.relative=arrival;
	sden=parseInt(srafak.substring(0,2));	//pred ktery den ma byt srafovano
	smes=parseInt(srafak.substring(3,5))-1;
	srok=parseInt(srafak.substring(6,10));
	if (sden>0 && sden<32 && smes>0 && smes<13 && srok>odroku-1 && srok<doroku+1)
		this.srafak = (new Date(srok,smes,sden+1));
	else
		this.srafak = new Date();
	if (odroku>1800)
		this.odroku=odroku;
	else
		this.odroku=this.calDate.getYear();
	//odroku	-od jakeho roku
	if (doroku>1800)
		this.doroku=doroku;
	else
		this.doroku=this.odroku+3;



	//doroku	-do jakeho roku
//	if (this.odroku<1950) this.calDate.setYear(1975); else this.calDate.setYear(this.odroku);
	//	this.inner=eval("document.all.puff"+id+".innerHTML");
	//	this.inner=document.all.puff1.innerHTML;*/









function iltkalendar(id,x,y,nx,ny,kam,jakrok,skrt,lang,odroku,doroku,srafak,vybrano,arrival)
{
	// vybrano = string obsahujici datum, ktere se vypise do inputu
	sden = parseInt(vybrano.substring(0,2));	//pred ktery den ma byt srafovano
	if (sden==0)
		sden=parseInt(vybrano.substring(1,2));	//pred ktery den ma byt srafovano
	smes=parseInt(vybrano.substring(3,5))-1;
	if (smes==-1)
		smes=parseInt(vybrano.substring(4,5))-1;
	srok=parseInt(vybrano.substring(6,10));
	if (srok==0)
		srok=parseInt(vybrano.substring(7,10));
	if (jakrok==20)
		srok=srok+2000;

	// propojeni s datumem OD
	this.arrival = arrival;

//alert(sden+' - '+smes+' - '+srok);
	if (sden>0 && sden<32 && smes>0 && smes<13 && srok>odroku-1 && srok<doroku+1)
		this.calDate = (new Date(srok,smes,sden));
	else
		this.calDate = new Date();
	this.id=id;			//id	-1,2,3...
	this.x=x;			//x		-poloha horniho rohu pro IE4
	this.y=y;			//y		-poloha horniho rohu pro IE4
	this.nx=nx;			//nx	-poloha horniho rohu pro NN4
	this.ny=ny;			//ny	-poloha horniho rohu pro NN4
	this.kam=kam;		//kam	-kam se ma zapsat vysledny datum (jmeno inputu ve formulari FF)
	this.jakrok=jakrok;	//jakrok-2, 4, 20, 40 (yy/mm/dd, yyyy/mm/dd, dd.mm.yy, dd.mm.yyyy)
	this.skrt=skrt;		//skrt	-zda maji byt dny pred aktualnim dnem sktrle
	this.lang=lang;		//jazyk pro kalendar
//	this.relative=arrival;
	sden=parseInt(srafak.substring(0,2));	//pred ktery den ma byt srafovano
	smes=parseInt(srafak.substring(3,5))-1;
	srok=parseInt(srafak.substring(6,10));
	if (sden>0 && sden<32 && smes>0 && smes<13 && srok>odroku-1 && srok<doroku+1)
		this.srafak = (new Date(srok,smes,sden+1));
	else
		this.srafak = new Date();
	if (odroku>1800)
		this.odroku=odroku;
	else
		this.odroku=this.calDate.getYear();
	//odroku	-od jakeho roku
	if (doroku>1800)
		this.doroku=doroku;
	else
		this.doroku=this.odroku+3;



	//doroku	-do jakeho roku
//	if (this.odroku<1950) this.calDate.setYear(1975); else this.calDate.setYear(this.odroku);
	//	this.inner=eval("document.all.puff"+id+".innerHTML");
	//	this.inner=document.all.puff1.innerHTML;
}


/*window.onscroll = function() {

r='';
for ( t in window.screen )
r += t + ', ';
e=event;
alert( r +
e.clientY + ', ' +
e.pageY + ', ' +
e.y + ', ' +
e.screenY + ', ' +
e.offsetY + ', ' +
document.getElementById( 'body' ).clientHeight + ', ' +
document.getElementById( 'body' ).clientTop + ', ' +
document.getElementById( 'body' ).scrollHeight + ', ' +
document.getElementById( 'body' ).scrollTop + ', ' +
document.getElementById( 'body' ).offsetHeight + ', ' +
document.getElementById( 'body' ).offsetTop + ', ' +
document.getElementById( 'body' ).topMargin + ', '
);//alert( event.scrollTop );

}
*/
function ukazka( e, kalendar )
{
/*r='';
for ( t in document.getElementById('iltkalendar'+kalendar.id).style )
r += t + ', ';
alert( r );
alert(
e.clientY + ', ' +
e.pageY + ', ' +
e.y + ', ' +
e.screenY + ', ' +
e.offsetY + ', ' +
document.getElementById( 'body' ).clientHeight + ', ' +
document.getElementById( 'body' ).clientTop + ', ' +
document.getElementById( 'body' ).scrollHeight + ', ' +
document.getElementById( 'body' ).scrollTop + ', ' +
document.getElementById( 'body' ).offsetHeight + ', ' +
document.getElementById( 'body' ).offsetTop + ', ' +
document.getElementById( 'body' ).topMargin + ', '
);*/
	var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
    scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
    scrOfX = document.body.scrollLeft;
  } else if( document.documentElement &&
      ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
    scrOfX = document.documentElement.scrollLeft;
  }
//alert( e.clientX +' / '+ kalendar.x +' / '+ scrOfX );
//alert( document.documentElement.scrollTop );
	writeCalendar(kalendar);
	document.getElementById('iltkalendar'+kalendar.id).style.left = e.clientX + kalendar.x + scrOfX + 'px';
	document.getElementById('iltkalendar'+kalendar.id).style.top = e.clientY + kalendar.y + scrOfY + 'px';
//document.getElementById( 'body' ).scrollLeft +
//	document.getElementById( 'body' ).scrollTop
	document.getElementById('iltkalendar'+kalendar.id).style.visibility='visible';
/*
IE4?eval("document.all['iltkalendar"+kalendar.id+"'].style.pixelLeft="+kalendar.x):eval("document.layers.iltkalendar"+kalendar.id+".left="+kalendar.nx);
//self.event.clientY-50:document.layers.puff.left=kalendar.x;
IE4?eval("document.all['iltkalendar"+kalendar.id+"'].style.pixelTop="+kalendar.y):eval("document.layers.iltkalendar"+kalendar.id+".top="+kalendar.ny);
//self.event.clientX-50:document.layers.puff.top=kalendar.y;
IE4?eval("document.all['iltkalendar"+kalendar.id+"'].style.visibility='visible'"):eval("document.layers.iltkalendar"+kalendar.id+".visibility='show'");
*/
}
function ukazkaWithRelative(e,kalendar,kalendar2)
{
	var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
    scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
    scrOfX = document.body.scrollLeft;
  } else if( document.documentElement &&
      ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
    scrOfX = document.documentElement.scrollLeft;
  }

	kalendar.relative=kalendar2;

	writeCalendar(kalendar);
	document.getElementById('iltkalendar'+kalendar.id).style.left = e.clientX + kalendar.x + scrOfX + 'px';
	document.getElementById('iltkalendar'+kalendar.id).style.top = e.clientY + kalendar.y + scrOfY + 'px';
	document.getElementById('iltkalendar'+kalendar.id).style.visibility='visible';
	document.getElementById('iltkalendar'+kalendar2.id).style.visibility='hidden';
}

function napisto(kalendar)
{ year=kalendar.calDate.getYear();
  mesic=1+kalendar.calDate.getMonth();
  den=kalendar.calDate.getDate();
  if (year<1000) year+=1900;
	//  if (year>2000) year-=2000; else year-=100;
  if (kalendar.jakrok==2 || kalendar.jakrok==20) { year-=2000; if (year<0 || year>99) year=0; }
  if (mesic<10) mesics="0" + mesic; else mesics=mesic;
  if (den<10) dens="0" + den; else dens=den;
  if (year<10) years="0" + year; else years=year;
  if (kalendar.jakrok==40 || kalendar.jakrok==20) return (dens+"."+mesics+"."+years);
  else return (dens+"."+mesics+"."+years);
}

function jenovy(kalendar,day, month, year)
{
	if (year<1000)
		year+=1900;
	srafak = new Date();
//alert(srafak+"\n"+kalendar.srafak);
//alert(kalendar.srafak.getMonth());
	var checkdate  = kalendar.srafak.getDate();
	var checkmonth = kalendar.srafak.getMonth();
	var checkyear  = kalendar.srafak.getYear(); if (checkyear<1000) checkyear+=1900;
	nResultado = checkyear * 10000 + ( checkmonth + 1 ) * 100 + checkdate;
	sResultado = year * 10000 + ( month + 1 ) * 100 + day;

	if (sResultado < nResultado)
		return true;
	else
		return false;
}

function vyberden(kalendar, den)
{
	kalendar.calDate.setDate(den);
	writeinfo(kalendar);
	document.getElementById('iltkalendar'+kalendar.id).style.visibility='hidden';
//IE4?eval("document.all['iltkalendar"+kalendar.id+"'].style.visibility='hidden'"):eval("document.layers.iltkalendar"+kalendar.id+".visibility='hide'");
}

function writeinfo(kalendar)
{
	if (kalendar.relative!=null)
	{
			var y = kalendar.calDate.getYear();
			if ( y < 500 )
			{
				y += 1900;
			}
		//alert(kalendar.relative.calDate);
		if (kalendar.calDate > kalendar.relative.calDate)
		{
			kalendar.relative.calDate.setYear( y );
			kalendar.relative.calDate.setMonth(kalendar.calDate.getMonth());
			kalendar.relative.calDate.setDate(kalendar.calDate.getDate());
			document.getElementById(kalendar.relative.kam).value=napisto(kalendar.relative);
		}
		kalendar.relative.srafak.setYear( y );
		kalendar.relative.srafak.setMonth(kalendar.calDate.getMonth());
		kalendar.relative.srafak.setDate(kalendar.calDate.getDate());
		//alert(kalendar.relative.calDate);
		document.getElementById('iltkalendar'+kalendar.relative.id).style.visibility='hidden';
	}
	document.getElementById(kalendar.kam).value=napisto(kalendar);
//	eval("document.FF."+kalendar.kam+".value=napisto(kalendar)");
}

function getDaysInMonth(kalendar)
{   var days;
    var month = kalendar.calDate.getMonth()+1;
    var Year  = kalendar.calDate.getYear();
    if (month==1 || month==3 || month==5 || month==7 || month==8 || month==10 || month==12) days=31;
    else if (month==4 || month==6 || month==9 || month==11) days=30;
    else if (month==2) if (((Year % 4)==0) && ((Year % 100)!=0) || ((Year % 400)==0)) days=29; else days=28;
    return (days);
}

function setCurrentMonth(kalendar)
{   var month;
	//IE4?
	month=eval("document.calControl"+kalendar.id+".month.selectedIndex");
	//:month=eval("document.layers.iltkalendar"+kalendar.id+".document.calControl"+kalendar.id+".month.selectedIndex");
    kalendar.calDate.setMonth(month);


	//	var arrivalMonth = 0;
//		document.getElementById('iltkalendar'+kalendar.id).style.left = e.clientX + kalendar.x + scrOfX + 'px';

    writeinfo(kalendar);
    writeCalendar(kalendar);
}
function setCurrentYear(kalendar)
{   var year;
	//IE4?
	year=eval("document.calControl"+kalendar.id+".year.selectedIndex");
	//:year=eval("document.layers.iltkalendar"+kalendar.id+".document.calControl"+kalendar.id+".year.selectedIndex");
    kalendar.calDate.setYear(year+kalendar.odroku);
    writeinfo(kalendar);
    writeCalendar(kalendar);
}
function predmes(kalendar)
{	month=kalendar.calDate.getMonth(); year=kalendar.calDate.getYear(); if (year<1000) year+=1900;
	if (year>kalendar.odroku) { month--; if (month<0) { month=11; year--; }}
		else if (month>0) month--;
    kalendar.calDate.setMonth(month);
    kalendar.calDate.setYear(year);
    writeinfo(kalendar);
    writeCalendar(kalendar);
}
function pomes(kalendar)
{	month=kalendar.calDate.getMonth(); year=kalendar.calDate.getYear(); if (year<1000) year+=1900;
	if (year<kalendar.doroku) { month++; if (month>11) { month=0; year++; }}
		else if (month<11) month++;
    kalendar.calDate.setMonth(month);
    kalendar.calDate.setYear(year);
    writeinfo(kalendar);
    writeCalendar(kalendar);
}

function writeCalendar(kalendar)
{
	var month   = kalendar.calDate.getMonth();
	var year    = kalendar.calDate.getYear(); if (year<1000) year+=1900;
	var day     = kalendar.calDate.getDate();



	if(kalendar.lang=="cz")
	{
		var monthLocale = new Array("Leden", "�nor", "B�ezen", "Duben", "Kv�ten", "�erven", "�ervenec", "Srpen", "Z���", "��jen", "Listopad", "Prosinec");
		var daysLocale = new Array("Po","�t","St","�t","Pa","So","Ne");
	}
	else
	{
		var monthLocale = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
		var daysLocale = new Array("Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun");
	}

	uvnitr="<table border=0 cellspacing=0 cellpadding=1 width=190 bgcolor=003366><tr><td><TABLE CELLPADDING=0 CELLSPACING=0 BORDER=0 align=center width=100% bgcolor=#eeeeee><TR><TD nowrap align=center><FORM name='calControl"+kalendar.id+"' onSubmit='return false;'><a href='javascript:predmes(kalendar"+kalendar.id+")'><img src='" + pre + "img/icons/kp.gif' border=0 width=10 height=16 alt=X></a><SELECT NAME='month' onChange='setCurrentMonth(kalendar"+kalendar.id+")'><OPTION";
	if (month==0) uvnitr+=" selected"; uvnitr+=">";uvnitr+=monthLocale[0];uvnitr+="<OPTION";
	if (month==1) uvnitr+=" selected"; uvnitr+=">";uvnitr+=monthLocale[1];uvnitr+="<OPTION";
	if (month==2) uvnitr+=" selected"; uvnitr+=">";uvnitr+=monthLocale[2];uvnitr+="<OPTION";
	if (month==3) uvnitr+=" selected"; uvnitr+=">";uvnitr+=monthLocale[3];uvnitr+="<OPTION";
	if (month==4) uvnitr+=" selected"; uvnitr+=">";uvnitr+=monthLocale[4];uvnitr+="<OPTION";
	if (month==5) uvnitr+=" selected"; uvnitr+=">";uvnitr+=monthLocale[5];uvnitr+="<OPTION";
	if (month==6) uvnitr+=" selected"; uvnitr+=">";uvnitr+=monthLocale[6];uvnitr+="<OPTION";
	if (month==7) uvnitr+=" selected"; uvnitr+=">";uvnitr+=monthLocale[7];uvnitr+="<OPTION";
	if (month==8) uvnitr+=" selected"; uvnitr+=">";uvnitr+=monthLocale[8];uvnitr+="<OPTION";
	if (month==9) uvnitr+=" selected"; uvnitr+=">";uvnitr+=monthLocale[9];uvnitr+="<OPTION";
	if (month==10) uvnitr+=" selected"; uvnitr+=">";uvnitr+=monthLocale[10];uvnitr+="<OPTION";
	if (month==11) uvnitr+=" selected"; uvnitr+=">";uvnitr+=monthLocale[11];uvnitr+="</SELECT><SELECT NAME='year' onChange='setCurrentYear(kalendar"+kalendar.id+")'>";
	for (i=kalendar.odroku; i<kalendar.doroku+1; i++)
	{
		uvnitr+="<OPTION";
		if (year==i)
			uvnitr+=" selected";
		uvnitr+=">"+i;
	}
//  if (year==2002) uvnitr+=" selected";uvnitr+=">2002<OPTION";if (year==2003) uvnitr+=" selected";uvnitr+=">2003<OPTION";if (year==2004) uvnitr+=" selected";uvnitr+=">2004
uvnitr+="</SELECT><a href='javascript:pomes(kalendar"+kalendar.id+")'><img src='" + pre + "img/icons/kn.gif' border=0 width=10 height=16 alt=X></a><a href='javascript:vyberden(kalendar"+kalendar.id+", "+day+")'><img src='" + pre + "img/icons/ko.gif' border=0 width=10 height=16 alt=X></a></FORM></TD></TR></TABLE></TD></TR><tr><td>";
uvnitr+="<TABLE CELLPADDING=0 CELLSPACING=0 BORDER=0 ALIGN=CENTER width=100% BGCOLOR='#004181'><TR BGCOLOR='#004181'><TD class='heading' align=center>"+daysLocale[0]+"</TD><TD class='heading' align=center>"+daysLocale[1]+"</TD><TD class='heading' align=center>"+daysLocale[2]+"</TD><TD class='heading' align=center>"+daysLocale[3]+"</TD><TD class='heading' align=center>"+daysLocale[4]+"</TD><TD class='heading' align=center>"+daysLocale[5]+"</TD><TD class='heading' align=center>"+daysLocale[6]+"</TD></TR>";
var i   = 0;
var days = getDaysInMonth(kalendar); if (day > days) day = days;
var firstOfMonth = new Date (year, month, 1);
var startingPos  = firstOfMonth.getDay()-1; if (startingPos<0) startingPos=6;
days += startingPos;
var columnCount = 0;
for (i = 0; i < startingPos; i++) { uvnitr += blankCell; columnCount++; }
var currentDay = 0;
var dayType    = "weekday";
for (i = startingPos; i < days; i++)
{var paddingChar = "&nbsp;";
 if (i-startingPos+1 < 10) padding = "&nbsp;&nbsp;"; else padding = "&nbsp;";
 currentDay = i-startingPos+1;
 if (currentDay == day) dayType = "focusDay";
 else dayType = "weekDay";
 if (jenovy(kalendar,currentDay,month,year) && kalendar.skrt==true)
 	uvnitr+="<TD class='heading2' align=center><font face=verdana size=1>"+padding+"<s>"+currentDay +"</s>"+paddingChar+"</font></TD>";
 else
 	uvnitr+= "<TD class='heading2' align=center>&nbsp;<a class='"+dayType+"' href='javascript:vyberden(kalendar"+kalendar.id+", "+currentDay+")'>"+padding+currentDay+paddingChar+"</a></TD>";
 columnCount++;
 if (columnCount % 7 == 0) uvnitr+="</TR><TR>";
}
for (i=days; i<42; i++)
{if (columnCount % 7 == 0) {uvnitr+= "</TR>"; break;}
 uvnitr+= blankCell;columnCount++;
}
uvnitr+="</TABLE></TD></TR></TABLE>";

//if (IE4) document.all.puff1.innerHTML=uvnitr; else
/*if (IE4)
this.inner=document.all.puff+"1"+.innerHTML;
else*/
//alert('iltkalendar'+kalendar.id);
	document.getElementById('iltkalendar'+kalendar.id).innerHTML=uvnitr;
//	eval("document.getElementById('iltkalendar"+kalendar.id+"').innerHTML=\""+uvnitr+"\"");
/*	if (IE4)
		eval("document.all['iltkalendar"+kalendar.id+"'].innerHTML=\""+uvnitr+"\"");
	else
	{
		eval("document.iltkalendar"+kalendar.id+".document.write(\""+uvnitr+"\")");
		eval("document.iltkalendar"+kalendar.id+".document.close()");
	}*/
}

