// der Kalender ist frei positionierbar 
// die verwendete Schrift wird durch die entsprechende style-Anweisung in der html-Datei festgelegt

aktuell = new Date();
tag = aktuell.getDate();
ganztag = aktuell.getDate();
tage = aktuell.getDay();
monat = aktuell.getMonth() + 1;
monatx = monat
if (monat <= 9) monatx = "0" + monat
jahr = aktuell.getYear();
wochentag = new Array("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag");
monate = new Array("","Januar","Februar","M&auml;rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember");
tagezahl = new Array(0,31,28,31,30,31,30,31,31,30,31,30,31);
if (jahr < 1900) jahr = jahr +1900;	// umrechnen fuer Mozilla

werk = "#1b6b86";		// Hintergrundfarbe fuer Montag bis Freitag
sams = "#1b6b86";		// Hintergrundfarbe fuer Samstag
sonn = "#1b6b86";		// Hintergrundfarbe fuer Sonntag

// Pfad fuer Bilder
zurueck = "fileadmin/img/pfeil-links.jpg";	// zurueck (Dreieck links)
vor = "fileadmin/img/pfeil-rechts.jpg";		// Bild vor (Dreieck rechts)
now = "pic/k_now1.gif";		// aktueller Werktag (roter Kringel)
w_now = "pic/k_w_now1.gif";	// aktueller Wochenendtag (weisser Kringel)

// Hintergrundfarben für Bild heute (roter bzw. weisser Kringel), keine Farbe = Transparenz zum Layer
atag = "#FFFFFF";		// Mo-Fr
atag_sa = "#FE7E02";		// Samstag
atag_so = "#FF0000";		// Sonntag

titelhg = "#1b6b86";		// Hintergrundfarbe fuer Kalenderkopf und -fuss
lhg = "#1b6b86";		// Hintergrundfarbe fuer Layer bzw. Div, keine Farbe = Transparent zum Hintergrund (bgcolor)

titelvg = "#FFFFFF";		// Schriftfarbe fuer Kalenderkopf und -fuss
monatform = "bold";		// Schriftdicke fuer Kalenderkopf (bold = fett | normal | lighter = dünner)
datform = "normal";		// Schriftdicke fuer Kalenderfuß Tag (bold = fett | normal | lighter = dünner)
uhrform = "normal";		// Schriftdicke fuer Kalenderfuß Uhr (bold = fett | normal | lighter = dünner)
tagfarbe = "#FFFFFF";		// Schriftfarbe fuer Tagesbezeichnungen
datumfarbe = "#FFFFFF";		// Schriftfarbe fuer Kalendertage
bord = "0px";			// Rahmendicke in Pixel
bordfarb = "#FFFFFF";		// Rahmenfarbe
pad = "10px 10px 10px 10px";			// Abstand vom Rahmen zum Kalender in Pixel: oben rechts unten links

bordnav = "border:0px solid #FFFFFF;" // Rahmenlinie unter Monatsnavigation (Tabellenkopf), leer lassen wenn kein Rahmen erwünscht, ansonsten folgende Syntax verwenden: bordnav = "border-bottom:solid #1E4584 1.0pt;"
bordmon = "border:1px solid #FFFFFF;" // Rahmenlinie über Datums- und Uhrzeitanzeige, leer lassen wenn kein Rahmen erwünscht, ansonsten folgende Syntax verwenden: bordmon = "border-top:solid #1E4584 1.0pt;"
borduhr = ""
borddatum = ""

idname = "monatskalender";	// Name/ID fuer Kalender
zeitintervall = 60000;		// Aktualisierungsintervall von Uhr/Kalender. (1000 = 1 Sekunde | 60000 = 1 Minute)

// **************************

jtag = tag;
jmonat = monat;
jjahr = jahr;
jsekunde = "";
jminute = "";
jstunde = "";
starttag = 1;
minute = 0;
stunde = 0;
inhalt = "";
if (tag < 10) ganztag = "0" + String(tag);

// **************************

ns4 = document.layers;
ie4 = document.all;
ns6 = document.getElementById && !document.all;
var verfahren, posx, posy, aktuellx, aktuelly, kleben;

function kalender_schreiben() {
	if(ns4) {
		document.write("<layer name=\""+idname+"\" id=\""+idname+"\" style=\"position:relative;z-index:100;left:0.0pt;top:0.0pt;width:140;padding:"+pad+"; border:"+bord+" solid "+bordfarb+"; background-color: " + lhg + "\"></layer>");
		verfahren = document.layers[idname];
	}
	else {
		document.write("<div id=\"" + idname + "\" style=\"position:relative;z-index:100;left:0.0pt;top:0.0pt;padding:"+pad+"; border:"+bord+" solid "+bordfarb+"; background-color: " + lhg + "\"></div>");
		if (ie4 || ns6) verfahren = ns6? document.getElementById(idname) : document.all[idname];
		verfahren.style.width = 140;
	}
	kanzeige();
}
function kanzeige() {
	tagezahl[2] = schaltjahr(jjahr);
	jetzt();
	zeit_ermitteln();
	kalender();
	txt();
	zeitakt = window.setTimeout("kanzeige()",zeitintervall);
}
function txt() {
	if(ns4)
		if(document.layers[idname]){
			document.layers[idname].document.open('text/html');
			document.layers[idname].document.write(inhalt);
			document.layers[idname].document.close();
		}
	if(ie4)
		if(document.all[idname])
			document.all[idname].innerHTML = inhalt;
	if(ns6)
		if(document.getElementById(idname))
			document.getElementById(idname).innerHTML = inhalt;
}
function zeit_ermitteln() {
	aktuell = new Date();
	sekunde = aktuell.getSeconds();
	minute = aktuell.getMinutes();
	stunde = aktuell.getHours();
	jstunde = String(stunde);
	jminute = String(minute);
	jsekunde = String(sekunde);
	if (minute < 10) jminute = "0" + String(minute);
	if (sekunde < 10) jsekunde = "0" + String(sekunde);
}
function schaltjahr(j) {
	t = 28;
	if (j % 4 == 0) {
		t = 29;
		if (j % 100 == 0 && j % 400 != 0) t = 28;
	}
	return t;
}
function jetzt() {
	jdat = new Date(jjahr,jmonat-1,1);
	starttag = jdat.getDay();
	if (starttag == 0) starttag = 7;
}
function monatzurueck() {
	window.clearTimeout(zeitakt);
	jmonat--;
	if (jmonat<1) {
		jmonat = 12;
		jjahr--;
		if (jjahr < 1970) {
			jjahr = 1970;
			jmonat = 1;
		}
	}
	kanzeige();
}
function monatvor() {
	window.clearTimeout(zeitakt);
	jmonat++;
	if (jmonat > 12) {
		jmonat = 1;
		jjahr++;
	}
	kanzeige();
}
function stellen() {
	jtag = tag;
	jmonat = monat;
	jjahr = jahr;
	kanzeige();
}
function kalender() {
      	trtag = "<tr align=\"center\" valign=\"middle\">";
	style1 = "style=\"border:none; "+bordnav+" font-weight: "+monatform+"; padding:3px; background-color: "+titelhg+"; color: "+titelvg+";\"";
	style2 = "style=\"border:none; "+borduhr+" font-weight: "+uhrform+"; background-color: "+titelhg+"; color: "+titelvg+";\"";
	tdtag = "</td><td bgcolor=\""+werk+"\" width=\"20\" style=\"color: "+tagfarbe+"; border:0px solid #FFFFFF; padding:3px; margin:2px; font-weight: bold; font-size:11px;\">";
	inhalt = "<table border=\"0\" cellspacing=\"4\" cellpadding=\"4\" width=\"140\" style=\"font-size: 11px;font-style: bold;\">";
	inhalt = inhalt + trtag;



	// Uhrzeit im Tabellenkopf anzeigen
	//inhalt = inhalt + "<td height=\"18\" colspan=\"7\" " + style2 + ">"+jstunde+":"+jminute+":"+jsekunde+" Uhr</td>";
	//inhalt = inhalt + "</tr>" + trtag;
	inhalt = inhalt + "<td height=\"18\" " + style1 + "><img src=\""+zurueck+"\" alt=\"<\" onclick=\"monatzurueck();\" title=\"Einen Monat zur&uuml;ck\" style=\"cursor: hand;\"></td>";
	inhalt = inhalt + "<td colspan=\"5\" " + style1 + ">"+monate[jmonat]+"&nbsp;"+jjahr+"</td>";
	inhalt = inhalt + "<td " + style1 + "><img src=\""+vor+"\" alt=\">\" onclick=\"monatvor();\" title=\"Einen Monat vor\" style=\"cursor: hand;\"></td></tr>";
	inhalt = inhalt + trtag + "<td height=\"18\" bgcolor=\""+werk+"\" width=\"20\" style=\"font-style: normal; color: "+tagfarbe+"; font-weight: bold; font-size: 100%;\">Mo" + tdtag + "Di" + tdtag + "Mi" + tdtag + "Do" + tdtag + "Fr</td><td style=\"font-style: normal; color: "+tagfarbe+";border:0px solid #FFFFFF; font-weight: bold; font-size:11px;\" bgcolor=\""+sams+"\" width=\"20\">Sa</td><td style=\"font-style: bold; color: "+tagfarbe+"; font-weight: bold;border:0px solid #FFFFFF; font-size: 100%;\" bgcolor=\""+sonn+"\" width=\"20\">So</td></tr>";
	zahl = 0;
	for(asl=1; asl<7; asl++) {
		inhalt = inhalt + trtag;
		for(bsl=1; bsl<8; bsl++) {
			zahl++;
			if (bsl < 6) farbe = werk;
			if (bsl == 6) farbe = sams;
			if (bsl > 6) farbe = sonn;
			akt = zahl + 1 - starttag;
			if (jmonat == 1 && akt == 1 || jmonat == 5 && akt == 1 || jmonat == 6 && akt == 17 && jjahr < 1992 || jmonat == 10 && akt == 3 && jjahr > 1990 || jmonat == 12 && (akt == 25 || akt == 26)) farbe = sonn;
			if (zahl < starttag || akt > tagezahl[jmonat]) inhalt = inhalt + "<td height=\"18\" style=\"font-style: normal; font-weight: bold; font-size:11px;background-color: "+farbe+";\">&nbsp;</td>";
			if (zahl >= starttag && akt <= tagezahl[jmonat]) {
				if (akt == tag && jmonat == monat && jjahr == jahr)
					{
						if (bsl < 6) {inhalt = inhalt + "<td height=\"18\" background=\""+now+"\" style=\"font-style: normal; color: "+datumfarbe+"; font-weight:bold;border:1px solid #4c92b6; font-size:12px;background-color:#185c73;\">"+String(akt)+"</td>";}
						if (bsl == 6) {inhalt = inhalt + "<td height=\"18\" background\""+w_now+"\" style=\"font-style: bold; color: "+datumfarbe+"; font-weight: normal; font-size:11px;;background-color: "+atag_sa+";\">"+String(akt)+"</td>";}
						if (bsl > 6) {inhalt = inhalt + "<td height=\"18\" background=\""+w_now+"\" style=\"font-style: bold; color: "+datumfarbe+"; font-weight: normal; font-size:11px;background-color: "+atag_so+";\">"+String(akt)+"</td>";}  
						
					}
				else
					inhalt = inhalt + "<td height=\"18\" style=\"font-style: normal; color: "+datumfarbe+"; font-weight: normal; font-size:11px;border:1px solid #4c92b6;background-color: "+farbe+";\">"+String(akt)+"</td>";
			}
		}
		inhalt = inhalt + "</tr>";
	}
    
    
      
//	inhalt = inhalt + trtag + "<td height=\"18\" colspan=\"7\" style=\"border:none; "+borddatum+" font-weight: "+datform+"; "+bordmon+" background-color: "+titelhg+"; color: "+titelvg+"; cursor: hand;\" onclick=\"stellen();\" title=\"klicken = Kalender auf den heutigen Tag zurückstellen\">"+wochentag[tage]+", "+ganztag+"."+monatx+"."+jahr+"</td></tr>";
	// anstatt Wochentag den Monat ausschreiben
	//inhalt = inhalt + trtag + "<td height=\"18\" colspan=\"7\" style=\"border:none;  font-weight: "+uhrform+"; "+bordmon+" background-color: "+titelhg+"; color: "+titelvg+"; cursor: hand;\" onclick=\"stellen();\" title=\"klicken = Kalender auf den heutigen Tag zurückstellen\">""+ganztag+".&nbsp;"+monate[monat]+"&nbsp;"+jahr+"</td></tr>";
	
	//inhalt = inhalt + trtag + "<td height=\"18\" colspan=\"7\" " + style2 + ">"+jstunde+":"+jminute+" Uhr</td></tr>";
	// wenn bei der Uhrzeit Sekunden angezeigt werden sollen (zeitintervall auf 1000 setzen):
	//inhalt = inhalt + trtag + "<td height=\"18\" colspan=\"7\" " + style2 + ">"+jstunde+":"+jminute+":"+jsekunde+" Uhr</td></tr>";
	
	inhalt = inhalt + "</table>";
}
function startbewegen(e){
	if (ns4) {
		posx = e.pageX;
		posy = e.pageY;
		aktuellx = window.document[idname].pageX;
		aktuelly = window.document[idname].pageY;
		kleben = true;
		window.captureEvents(Event.MOUSEMOVE);
		window.onmousemove = bewegen;
	}
	if (ie4 && event.srcElement.id == idname || ns6 && e.target.id == idname) {
		posx = ie4? event.clientX : e.clientX;
		posy = ie4? event.clientY : e.clientY;
		aktuellx = parseInt(verfahren.style.left);
		aktuelly = parseInt(verfahren.style.top);
		kleben = true;
		document.onmousemove = bewegen;
	}
}
function bewegen(e){
	if (kleben) {
		if (ie4){
			verfahren.style.left = aktuellx + event.clientX - posx;
			verfahren.style.top = aktuelly + event.clientY - posy;
		}
		if (ns6){ 
			verfahren.style.left = Number(aktuellx + e.clientX - posx);
			verfahren.style.top = Number(aktuelly + e.clientY - posy);
		}
		if (ns4) 
			window.document[idname].moveTo (aktuellx + e.pageX - posx,aktuelly + e.pageY - posy);
	}
	return true;
}
if(ns4) {
	window.captureEvents(Event.MOUSEDOWN);
	window.captureEvents(Event.MOUSEUP);
	window.onmousedown = startbewegen;
	window.onmouseup = new Function("kleben=false");
}
else {
	document.onmousedown = startbewegen;
	document.onmouseup = new Function("kleben=false");
}

