var week = new Array("mo", "tu", "we", "th", "fr", "sa" , "su");
var monthdays = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
var monthnames = new Array("January","February","March","April","May","June","July","August","September","October","November","December");
var year = 2002;
var month = 1;
var day = 1;
var program = new Array();
var programno = 0;
var monthday = 0;

function getMyDate(formname,inputname,datum,subject)
{
	var layer = "help";

	if (datum == "") var selectedDate = new Date();
	else var selectedDate = new Date(datum.substr(0,4),(datum.substr(4,2)-1),datum.substr(6,2));

	calendarblock = writeCalendar(selectedDate.getFullYear(),selectedDate.getMonth(),selectedDate.getDate(),subject,"form",formname,inputname,layer);

	var x = new getObj(layer);
	x.style.top = mouseY+10;
	x.style.left = mouseX+10;
	x.style.visibility = visible;
}

function writeCalendar(year,month,day,subject,type,formname,inputname,layername)
{
	linkaddon = "";
	// year thismonth, day
	// in 20020902 und layername
	if (day == 0) day = 1;
	monthday = day;

	var today = new Date(year,month,day);
	month = today.getMonth();
	day = today.getDay();
	var dayN = today.getDate();
	year = today.getFullYear();
	
	var calendarblock = "";
	var days = monthdays[month];

	if (month == 1) {
		if (year%4 == 0) days = 29;
	}

	calendarblock += "<table border=0 cellspacing=1 cellpadding=3 width=150 bgcolor=#ffffff>";
	// calendarblock += "<tr><td colspan=8>"+subject+"</td></tr>";
	calendarblock += "<tr><td colspan=3><a href=javascript:writeCalendar("+year+","+(month-1)+",1,'"+subject+"','"+type+"','"+formname+"','"+inputname+"','"+layername+"');><img src=/img/scroll_back.gif border=0 hspace=2 vspace=2></a><a href=javascript:writeCalendar("+year+","+(month+1)+","+day+",'"+subject+"','"+type+"','"+formname+"','"+inputname+"','"+layername+"');><img src=/img/scroll_forward.gif border=0 hspace=2 vspace=2></a></td>";
	calendarblock += "<td colspan=5 align=right><b>"+(month+1)+"/"+year+"</b></td></tr>";

	calendarblock += "<tr>";
	calendarblock += "<td align=center bgcolor=#bbbbbb>cw</td>";
	for (var i=0; i<7; i++){ calendarblock += "<td align=center bgcolor=#bbbbbb>" + week[i] + "</td>"; }
	calendarblock += "</tr>";
	
	var jumped = 0;
	var inserted = 1;
	var start = day - dayN%7;
	if (start < 0) start += 7;
	var weeks = parseInt((start + days)/7);
	if ((start + days)%7 != 0) weeks++;

	for (var i=6; i>0; i--)
	{
		weekstring = "";
		firstdayinweek = "";
		for (var j=7; j>0; j--)
		{
			curDay = "";
			if (jumped<start || inserted>days)
			{
				curDay = "&nbsp;";
				jumped++;
			}else
			{
				if(inserted<10) showday="0"+inserted;
				else showday=inserted;
				if(month<9) showmonth="0"+(month+1);
				else showmonth=month+1;
				
				if (firstdayinweek == "") firstdayinweek = inserted;
				// curDay += "<a href=index.php?FORM[date]="+year+showmonth+showday+"&"+linkaddon+">";
				curDay += "<a href=\"javascript:document."+formname+".elements['"+inputname+"'].value='"+year+showmonth+showday+"';hideHelp();\">";
				if (inserted<10) curDay += "0";
				curDay += inserted;
				curDay += "</a>";
				inserted++;
			}
			
			var now = new Date();
			
			if ((inserted-1) == now.getDate() && month == now.getMonth() && year == now.getFullYear()) bgcolor="dd9999";
			else if (j<3) bgcolor="ffaaaa";
			else bgcolor="eeeeee";
			
			weekstring += "<td align=center bgcolor=#"+bgcolor+">"+curDay+"</td>";
		}

		if (firstdayinweek != "") calendarweek = getCalendarweek(new Date(year,month,firstdayinweek));
		else calendarweek = "-";
		
		if (calendarweek <10) calendarweek = "0"+calendarweek;

		calendarblock += "<tr>";
		calendarblock += "<td bgcolor=#dddddd align=center>"+calendarweek+"</td>";
		calendarblock += weekstring;
		calendarblock += "</tr>";
	}

	calendarblock += "<tr><td colspan=8 align=center><a href=javascript:hideHelp();>schliessen</a> - <a href=javascript:clearValue('"+formname+"','"+inputname+"');>löschen</a></td></tr>";
	calendarblock += "</table>";
	
	showHelp(calendarblock);
}

function getCalendarweek(datum)
{
	var jh=datum.getYear(); if(jh<1900) jh+=1900;
	jh++;
	var kalwo=kaldiff(datum,jh);
	while(kalwo<1) { jh--; kalwo=kaldiff(datum,jh); }
	return kalwo;
}

function kaldiff(datum,jahr)
{
	var d4j=new Date(jahr,0,4);
	var wt4j=(d4j.getDay()+6)%7;
	return Math.floor(1.05+(datum.getTime()-d4j.getTime())/6048e5+wt4j/7);
}

function hideHelp()
{
	var x = new getObj('help');
	x.style.visibility = hidden;
}

function clearValue(formname,inputname)
{
	document.forms[formname].elements[inputname].value='';
	hideHelp();
}

function showHelp(txt)
{
	if (txt != "" && pageloaded)
	{
		if (document.layers){ bgcolor = "#eeeeee"; }else{ bgcolor = "#ffffff"; }
		txt = "<table cellpadding=0 cellspacing=0 border=1 bgcolor=#000000><tr><td>"+txt+"</td></tr></table>";
		
		layerWrite('help',txt);
		
		var x = new getObj('help');
		x.style.visibility = visible;

	}
}

// ----------------------- calendar day job anzeige

var minjobz = 500;
var maxjobz = 600;

function showJob(layer)
{
 maxjobz++;
 var x = new getObj(layer);
 x.style.zIndex = maxjobz;
}

function hideJob(layer)
{
 minjobz--;
 var x = new getObj(layer);
 x.style.zIndex = minjobz;
}


