//Wenn Einstellungsdialog geschlossen wird => Einstellungen speichern
System.Gadget.onSettingsClosing = SettingsClosing;


//Einstellungen laden
function start(){
	
	spracheladen();
	
	//Erweiterter Farbwähler
	document.getElementById("farbwae").checked = readGadgetSetting("farbwae");
	
	//Rahmenfarbe
	farbe_rahm = readGadgetSetting("farbe_rahm");
	document.getElementById("farbe_rahm_div").innerHTML="";
	document.getElementById("farbe_rahm_div").style.backgroundColor = farbe_rahm;
	
	//Hintergrundfarbe
	farbe_hint = readGadgetSetting("farbe_hint");
	document.getElementById("farbe_hint_div").innerHTML="";
	document.getElementById("farbe_hint_div").style.backgroundColor = farbe_hint;
	
	
	//rahmenbreite
	document.getElementById("rahmbreite").selectedIndex = readGadgetSetting("rahmbreite");
	
	
	//Hintergrundeffekt
	document.getElementById("effekt").selectedIndex = readGadgetSetting("effekt");
	
	
	//Segment oder Ziffernblatt
	uhr = readGadgetSetting("uhr");	
	document.getElementsByName("uhrinput")[uhr].checked = true;
	
	
	//Segmentfarbe
	document.getElementById("segfarb").selectedIndex = readGadgetSetting("segfarb")-1;
	
	//segment: sekunden anzeigen
	document.getElementById("sek_segment").checked = readGadgetSetting("sek_segment");
	
	//segment: doppelte blinkgeschw.
	document.getElementById("blinkgeschw").checked = readGadgetSetting("blinkgeschw");
	
	
	//zifferblattfarbe
	document.getElementById("ziffblfarb").selectedIndex = readGadgetSetting("ziffblfarb")-1;
	
	//stundenzeiger
	document.getElementById("hfarb").selectedIndex = readGadgetSetting("hfarb")-1;
	
	//minutenzeiger
	document.getElementById("mfarb").selectedIndex = readGadgetSetting("mfarb")-1;
	
	//sekundenzeiger
	document.getElementById("sfarb").selectedIndex = readGadgetSetting("sfarb")-1;
	
	//sekundenzeiger
	document.getElementById("sek_zeiger").checked = readGadgetSetting("sek_zeiger");
	
	//Segment oder Zifferblatt-Div
	zei(uhr);
	
	//speed 
	disspeed();
	
	//auto-update
	document.getElementById("autoupdate").checked = readGadgetSetting("autoupdate");
	

	
	//Aufträge
	
	
	//haupt-variablen laden
	auftraege = new Array();
	fso = new ActiveXObject ("Scripting.FileSystemObject");
	pfad_einma = System.Gadget.path + "\\daten\\auftr_einma.dat";
	pfad_woech = System.Gadget.path + "\\daten\\auftr_woech.dat";
	
	
	
	
	// - - - - Einmalig - - - -
	
	//aufträge einlesen
	if(fso.FileExists(pfad_einma)){
		fso_dat = fso.OpenTextFile(pfad_einma, 1, false, -1); 
		auftraege[0] = fso_dat.ReadAll().split("\r\n");
		fso_dat.close();
		
		sumschreib(0);
	}
	//keine aufträge vorhanden
	else{
		auftraege[0] = new Array();
		leerschreib(0, kei);
	}
	
	
	// - - - - Wöchentlich - - - -
		
	//aufträge einlesen
	if(fso.FileExists(pfad_woech)){
		fso_dat = fso.OpenTextFile(pfad_woech, 1, false, -1); 
		auftraege[1] = fso_dat.ReadAll().split("\r\n");
		fso_dat.close();
		
		sumschreib(1);
	}
	//keine aufträge vorhanden
	else{
		auftraege[1] = new Array();
		leerschreib(1, kei);
	}
	
	
	//gewählten register merken
	document.getElementById("regspeich").checked = readGadgetSetting("regspeich");
	
	register = readGadgetSetting("register").split("-");
	
	//Alle Registereinstellungen laden
	if(document.getElementById("regspeich").checked == true){
		registerwechs(0, register[0]);
		registerwechs(1, register[1]);
		registerwechs(2, register[2]);
	}
	
	
	//auto-update: besonderer status -> updatereiter einblenden
	if(readGadgetSetting("updatestat") != 0){
		//update ist bereit
		if(readGadgetSetting("updatestat") == 1){
			document.getElementById("updat").innerHTML="<span style=\"font-size:12pt; font-weight:bold\">"+upneust+"</span>";
			document.getElementById("upsuch1").disabled = true;
		}
		//update abgeschlossen
		else if(readGadgetSetting("updatestat") == 2){
			registerwechs(0,2);
			document.getElementById("updat").innerHTML="<span style=\"color:#00A300; font-size:12pt; font-weight:bold\">"+gweva1+System.Gadget.version+gweva2+"</span><br><br><a href=\"http://dahi24.da.funpic.de/denk-daran/protokoll.php\">"+detail+"</a>";
			System.Gadget.Settings.write("updatestat", 0);
		}
	}
	else if(readGadgetSetting("autoupdate") == true){
		document.getElementById("updat").innerHTML="<span style=\"color:#00A300; font-size:12pt; font-weight:bold\">"+aktue1+System.Gadget.version+aktue2+"</span>";
	}
	
}


xml_error = "";

function start_updatecheck(){
	document.getElementById("updat").innerHTML="<span style=\"font-size:12pt; font-weight:bold\">"+verher+"</span>";
	
	var xml = new XMLHttpRequest();
	xml.open('GET', "http://dahi24.da.funpic.de/denk-daran/version.php");
	xml.onreadystatechange = function (){
		
		if(xml.readyState == 4){
			if(xml.status == "200"){
				var ergeb = xml.responseXML.selectNodes("update")[0].getElementsByTagName("version")[0].text;
				updatecheck(ergeb);
			}
			else updatecheck("Fehler");
		}
		
	};
	
	xml_error = "";
	
	try{
		xml.send(null);
	}
	catch(e){
		xml_error = "<br><br>"+freprx;
	}
}


function updatecheck(x){
	
	if(x == "Fehler") document.getElementById("updat").innerHTML="<span style=\"color:red; font-size:12pt; font-weight:bold\">"+noverb+xml_error+"</span>"; 
	else if(x != System.Gadget.version){
		if(document.getElementById("autoupdate").checked == true) updatdown(1); //automatisch installieren
		
		else{ //mauell installieren
			
			var temp = "<h3>"+upfoun+"</h3>";
			
			temp += "<b>"+thisv+"</b><br><span style=\"font-size:18pt\">"+System.Gadget.version+"</span><br><br>";
			
			temp += "<b>"+aktuv+"</b><br><span style=\"font-size:18pt\">"+x+"</span><br><br>";
			
			temp += "<button onclick=\"updatdown(1)\" style=\"width:150px\"><img src=\"img\\down.png\"><br>"+upher+"</button><br><br>";
	
			temp += "<span style=\"font-size:8pt\"><a href=\"http://dahi24.da.funpic.de/denk-daran/protokoll.php\">"+detail+"</a></span>";
			
			document.getElementById("updat").innerHTML=temp;
		}
	}
	else document.getElementById("updat").innerHTML="<span style=\"color:#00A300; font-size:12pt; font-weight:bold\">"+aktue1+System.Gadget.version+aktue2+"</span>";
}


//alle register-funktionen in einer funktion, speichert außerdem die aktuelle einstellung
function registerwechs(x, y){
	//x=RegisterNr, y=Registerblatt
	
	var regsp = document.getElementById("regspeich").checked;
	
	if(x == 0){
		
		for (var i=0; i<4; i++){
			document.getElementById("inhalt"+i).style.display="none";
		}
		document.getElementById("inhalt"+y).style.display="inline";
		
		if (y == 0) {
			document.getElementById("lnk1").style.fontWeight="bold";
			document.getElementById("lnk2").style.fontWeight="normal";
			document.getElementById("lnk3").style.fontWeight="normal";
			
			//text kürzen
			setTimeout("textkuerzen("+register[1]+")", 1); 
			
		}
		if (y == 1) {
			document.getElementById("lnk1").style.fontWeight="normal";
			document.getElementById("lnk2").style.fontWeight="bold";
			document.getElementById("lnk3").style.fontWeight="normal";
		}
		if (y == 2) {
			document.getElementById("lnk1").style.fontWeight="normal";
			document.getElementById("lnk2").style.fontWeight="normal";
			document.getElementById("lnk3").style.fontWeight="bold";
		}
		
		
		//verhindern dass "neuer eintrag" dialog wiederhergestellt wird
		//außerdem wird (damit keine fehler auftreten) das hauptregister oben und die radio-buttons darunter deaktiviert
		if(y == 3) {
			y = 0;
			document.getElementById("deakt").style.display="inline";
			document.getElementById("lnks").disabled=true;
		}
		else{
			document.getElementById("deakt").style.display="none";
			setTimeout("document.getElementById(\"lnks\").disabled=false;", 1);
		}
		
		if(regsp == true) register[0] = y;
	}
	
	
	if(x == 1){
		
		document.getElementById("ubersicht0").style.display="none";
		document.getElementById("ubersicht1").style.display="none";
		document.getElementById("ubersicht"+y).style.display="inline";
		
		if (y == 0) {
			document.getElementById("ubersich0").style.fontWeight="bold";
			document.getElementById("ubersich1").style.fontWeight="normal";
		}
		if (y == 1) {
			document.getElementById("ubersich0").style.fontWeight="normal";
			document.getElementById("ubersich1").style.fontWeight="bold";
		}
		
		if(regsp == true) register[1] = y;
	}
	
	
	if(x == "2"){
		
		document.getElementById("ubersicht20").style.display="none";
		document.getElementById("ubersicht21").style.display="none";
		document.getElementById("ubersicht22").style.display="none";
		document.getElementById("ubersicht2"+y).style.display="inline";
		
		if (y == 0) {
			document.getElementById("des1").style.fontWeight="bold";
			document.getElementById("zea1").style.fontWeight="normal";
			document.getElementById("erw1").style.fontWeight="normal";
		}
		if (y == 1) {
			document.getElementById("des1").style.fontWeight="normal";
			document.getElementById("zea1").style.fontWeight="bold";
			document.getElementById("erw1").style.fontWeight="normal";
		}
		if (y == 2) {
			document.getElementById("des1").style.fontWeight="normal";
			document.getElementById("zea1").style.fontWeight="normal";
			document.getElementById("erw1").style.fontWeight="bold";
		}
		
		if(regsp == true) register[2] = y;
	}
	
	if(regsp == true) System.Gadget.Settings.write("register", register.join("-"));
}


//Werte in Eingabefelder schreiben für Bearbeitungsfunktion
function lnk(y, x) {
	
	auftrartwechs(y);
	
	document.getElementById("radios").disabled = true;
	
	// - - - - Einmalig - - - -
	if(y == 0){
		
		
		document.b1.dat[0].value=auftraege[0][x].substring(0,2);
		document.b1.dat[1].value=auftraege[0][x].substring(2,4);
		document.b1.dat[2].value=auftraege[0][x].substring(4,8);
		document.b1.dat[3].value=auftraege[0][x].substring(8,10);
		document.b1.dat[4].value=auftraege[0][x].substring(10,12);
		document.b1.dat[5].value=auftraege[0][x].substring(14);
		
		//Prüfen ob Textfeld eingeblendet wird
		if(auftraege[0][x].substring(13,14) == "1") {
			document.getElementById("meldtext0").checked = true;
			document.getElementById("meldtextdiv0").disabled=false;
		}
		else {
			document.getElementById("meldtext0").checked = false;
			document.getElementById("meldtextdiv0").disabled=true;
		}
		
		//prüfen ob nachreichfunktion eingeblendet wird
		if(auftraege[0][x].substring(12,13) > 0) document.getElementById("nachreich0").checked = true;
		else document.getElementById("nachreich0").checked = false;
	}
	
	
	// - - - - Wöchentlich - - - -
	if(y == 1){
		
		var tg = new Array();
		
		for(var i=0; i<7; i++){
			if(auftraege[1][x].substring(i, i+1) > 0) tg[i] = true;
			else tg[i] = false;
		}
		
		document.b2.gewtag[0].checked=tg[0];
		document.b2.gewtag[1].checked=tg[1];
		document.b2.gewtag[2].checked=tg[2];
		document.b2.gewtag[3].checked=tg[3];
		document.b2.gewtag[4].checked=tg[4];
		document.b2.gewtag[5].checked=tg[5];
		document.b2.gewtag[6].checked=tg[6];
		document.b2.dat2[0].value=auftraege[1][x].substring(7,9);
		document.b2.dat2[1].value=auftraege[1][x].substring(9,11);
		document.b2.dat2[2].value=auftraege[1][x].substring(14);
		
		//Prüfen ob Textfeld eingeblendet wird
		if(auftraege[1][x].substring(13,14) == "1") {
			document.getElementById("meldtext1").checked = true;
			document.getElementById("meldtextdiv1").disabled=false;
		}
		else {
			document.getElementById("meldtext1").checked = false;
			document.getElementById("meldtextdiv1").disabled=true;
		}
		
		//prüfen ob nachreichfunktion eingeblendet wird
		if(auftraege[1][x].substring(11,13) != "00") document.getElementById("nachreich1").checked = true;
		else document.getElementById("nachreich1").checked = false;
	}
	
	
	document.getElementById("einloesch"+y).style.visibility="visible";
	
	//mitteilen, dass hier ein existierender auftrag editiert wird
	document.getElementById("spe"+(y+1)).onclick = new Function("speich("+y+", "+x+");");
	document.getElementById("einloesch"+y).onclick = new Function("einmaloesch("+y+", "+x+");");
	document.getElementById("zur"+(y+1)).onclick = new Function("zurueck("+y+", "+x+");");
}


function leerschreib(x, y){
	if(x == 0){
		document.getElementById("sum0").innerHTML="<table class=\"eintr\" style=\"table-layout:fixed\"><tr><th width=\"77px\">"+dtm+"</th><th width=\"50px\">"+urz+"</th><th>"+txt+"</th></tr><tr><td colspan=\"3\">"+y+"</td></tr></table>";
	}
	
	if(x == 1){
		document.getElementById("sum1").innerHTML="<table class=\"eintr\" style=\"table-layout:fixed\"><tr><th width=\"77px\">"+tge+"</th><th width=\"50px\">"+urz+"</th><th>"+txt+"</th></tr><tr><td colspan=\"3\">"+y+"</td></tr></table>";
	}
}


txt_stat = new Array();
//Schreibt alle auftraege in die Uebersicht
function sumschreib(x) {
	
	end=new Array();
	
	txt_stat[x]=new Array();

	
	// - - - - Einmalig - - - -
	if(x == 0){
		
		for (var i=0; i<auftraege[0].length; i++){
			
			//Meldungsmodus
			var status="";
			txt_stat[0][i]=auftraege[0][i].substring(13,14);
			if(txt_stat[0][i] == "1") status=auftraege[0][i].substring(14);
			else status="<em title=\""+aut+"\">"+eiu1+auftraege[0][i].substring(8,10)+":"+auftraege[0][i].substring(10,12)+eiu2+".</em>";

			end[i]=("<tr class=\"Auftraege\" onclick=\"javascript:registerwechs(0,3); lnk(0, "+i+");\"><td>" + auftraege[0][i].substring(0,2) + "." + auftraege[0][i].substring(2,4) + "." + auftraege[0][i].substring(4,8) + "</td><td>" + auftraege[0][i].substring(8,10) + ":" + auftraege[0][i].substring(10,12) + "</td><td style=\"white-space: nowrap; text-align:left\"><span id=\"id0_"+i+"\">" + status + "</span></td></tr>");
			
			document.getElementById("sum0").innerHTML="<table class=\"eintr\" style=\"table-layout:fixed\"><tr><th width=\"77px\">"+dtm+"</th><th width=\"50px\">"+urz+"</th><th id=\"textbr0\">"+txt+"</th></tr>"+end.join("")+"</table>";

		}
	}
	
	
	// - - - - Wöchentlich - - - -
	if(x == 1){
		
		
		var gewaehlt=0;
		
		for (var i=0; i<auftraege[1].length; i++){
			
			var tage = new Array();
			var ztn2=auftraege[1][i].substring(0,7);
			
			var tage_anz=0;
			
			for (var j=0; j<=ztn2.length; j++){
				
				
				if(ztn2.substring(j,(j+1)) > 0){
					if(gewaehlt == 0) var tag1=tag[j];
					gewaehlt++;
				}
				else {
					if(gewaehlt == 1){
						tage.push(tag1);
						tage_anz++;
					}
					else if(gewaehlt == 2){
						tage.push(tag1+","+tag[j-1]);
						tage_anz=tage_anz+2;
					}
					else if(gewaehlt > 2){
						tage.push(tag1+"-"+tag[j-1]);
						tage_anz=tage_anz+2;
					}
					var gewaehlt=0;
				}
			}
			

			if(tage.length == 0){
				tage.push("-");
				groess="";
			}
			else{
				tage=String(tage).replace(/\,/g, ", ");
				if(tage_anz < 4) groess="";
				else if(tage_anz == 4) groess=" style=\"font-size:7pt\" ";
				else if(tage_anz == 5) groess=" style=\"font-size:6pt\" title=\""+tage+"\" ";
			}
			
			
			
			
			//Meldungsmodus
			var status="";
			txt_stat[1][i]=auftraege[1][i].substring(13,14);
			if(txt_stat[1][i] == "1") status=auftraege[1][i].substring(14);
			else status="<em title=\""+aut+"\">"+eiu1+auftraege[1][i].substring(7,9)+":"+auftraege[1][i].substring(9, 11)+eiu2+".</em>";
			
				
			
			
			end[i]=("<tr class=\"Auftraege\" onclick=\"registerwechs(0,3); lnk(1, "+i+")\"><td"+groess+">"+ tage + "</td><td>" + auftraege[1][i].substring(7,9) + ":" + auftraege[1][i].substring(9, 11) + "</td><td style=\"white-space: nowrap; text-align:left\"><span id=\"id1_"+i+"\">" + status + "</span></td></tr>");
			
			document.getElementById("sum1").innerHTML="<table class=\"eintr\" style=\"table-layout:fixed\"><tr><th width=\"77px\">"+tge+"</th><th width=\"50px\">"+urz+"</th><th id=\"textbr1\">"+txt+"</th></tr>"+end.join("")+"</table>";
		}
	}
	
	document.getElementById("loesch"+x).style.visibility="visible";


}


function textkuerzen(x){
	//aktuelle breite der normalen textbreite abfragen
	//-6 für den abstand zwischen zelle und span, -1 als feinkorrektur
	//innerText, damit z.B. aus & nicht &amp; wird und nicht gekürzt werden kann 
	if(auftraege[x] != ""){
		
		var stdtxtbr=document.getElementById("textbr"+x).offsetWidth-7;
		
		for(var i=0; i<auftraege[x].length; i++){
			if(document.getElementById("id"+x+"_"+i).offsetWidth > stdtxtbr && txt_stat[x][i] != 0){
			
				//titel einfügen
				document.getElementById("id"+x+"_"+i).title=document.getElementById("id"+x+"_"+i).innerText;
				
				//zu großen bereich gleich entfernen
				if(document.getElementById("id"+x+"_"+i).innerText.length > 33){
					document.getElementById("id"+x+"_"+i).innerText = document.getElementById("id"+x+"_"+i).innerText.substring(0, 33)+"...";
				}
				
				
				//auf die stelle genau den rest entfernen/anfangen zu kürzen
				if(stdtxtbr != -7){ //ist funktion zu früh gestartet worden?
					var zaehl=33; // als sicherheit nur 33mal ausführen
					while(document.getElementById("id"+x+"_"+i).offsetWidth > stdtxtbr && zaehl != 0) {
						document.getElementById("id"+x+"_"+i).innerText = document.getElementById("id"+x+"_"+i).innerText.substring(0, document.getElementById("id"+x+"_"+i).innerText.length-4)+"...";
						//es wird im endeffekt 1 buchstabe pro durchlauf weggenommen, die punkte müssen ja auch entfernt werden!!
						zaehl--;
					}
				}
				
			}
		}
	}
}



// - - - - - - - - - - Design - - - - - - - - - - -

function disspeed(){
	if(document.getElementById("sek_segment").checked == true){
		document.getElementById("blinkgeschw").disabled=true;
		document.getElementById("dbl1").disabled=true;
	}
	else {
		document.getElementById("blinkgeschw").disabled=false;
		document.getElementById("dbl1").disabled=false;
	}
}


function zei(x) {

	document.getElementById("uhr_art0").style.display="none";
	document.getElementById("uhr_art1").style.display="none";
	
	document.getElementById("uhr_art"+x).style.display="inline";
	
	
	
	uhr = x;
}


function FarbwaehlerOeffnen(x) {
	if(x == "Rah") farb = farbe_rahm; 
	else if(x == "Hin") farb = farbe_hint;
	
	
	if (document.getElementById("farbwae").checked == true) {
		shell = new ActiveXObject('WScript.shell');
		shell.sendKeys('%+d');		//Sendet Tastenkombi ALT+D => Erweiterter Farbwähler
	}
	farb = document.getElementById('Farbwaehler').ChooseColorDlg(farb); //Öffnet Farbwähler.
	farb = farb.toString(16); //Zahl wird in Hex-Wert umrechnet.
	
	// Fügt bei Bedarf fehlende Nullen am Anfang hinzu.
	if(farb.length < 6) {
		var Temp = '000000'.substring(0, 6 - farb.length);
		farb = Temp.concat(farb);
	}
	
	//#ff00ff wird von der Sidebar als Transparenz interpretiert, deshalb #ff00ff vermeiden
	if(farb == "ff00ff") farb = "ff00fe";
	
	farb="#"+farb;
	

	if(x == "Rah"){
		farbe_rahm = farb; 
		document.getElementById("farbe_rahm_div").style.backgroundColor = farbe_rahm;
	}
	else if(x == "Hin"){
		farbe_hint = farb;
		document.getElementById("farbe_hint_div").style.backgroundColor = farbe_hint;
	}
}


function standard(){
	if (bestat(swa) == 6){
		
		//Farben erweitert definieren
		document.getElementById("farbwae").checked = false;
		
		//Hintergrundfarbe
		farbe_hint = "#008000";
		document.getElementById("farbe_hint_div").style.backgroundColor = farbe_hint;
		
		//Rahmenfarbe
		farbe_rahm = "#FFFFFF";
		document.getElementById("farbe_rahm_div").style.backgroundColor = farbe_rahm;
			
		//Rahmendicke
		document.getElementById("rahmbreite").selectedIndex = 2;
		
		//Hintergrundeffekt
		document.getElementById("effekt").selectedIndex = 2;
		
		//Segment oder Zifferblatt
		document.getElementsByName("uhrinput")[0].checked = true;
		zei(0);
		
		//segmentfarbe
		document.getElementById("segfarb").selectedIndex = 1;
		
		//zifferblattfarbe
		document.getElementById("ziffblfarb").selectedIndex = 7;
		
		//stundenzeiger
		document.getElementById("hfarb").selectedIndex = 7;
		
		//minutenzeiger
		document.getElementById("mfarb").selectedIndex = 7;
		
		//sekundenzeiger
		document.getElementById("sfarb").selectedIndex = 3;
		
		//Sekundenzeiger anzeigen
		document.getElementById("sek_zeiger").checked = true;
		
		//sekunden anzeigen
		document.getElementById("sek_segment").checked = false;
		
		//blinkgeschwindigkeit
		document.getElementById("blinkgeschw").checked = false;
		disspeed();
		
		//Register Position merken
		document.getElementById("regspeich").checked = true;
		
		//auto-update
		document.getElementById("autoupdate").checked = true;
	}
}



// - - - - - - - - - - A U F T R Ä G E - - - - - - - - - -


function heute(){
	var jetzt = new Date();
	document.b1.dat[0].value = jetzt.getDate();
	document.b1.dat[1].value = jetzt.getMonth()+1;
	document.b1.dat[2].value = jetzt.getFullYear();
}



// - - - - - - - - Auftragart - - - - - - - -


//auftrag-editor einblenden, bzw. umschalten
function auftrartwechs(x){
	
	document.getElementById("zeit_art0").style.display="none";
	document.getElementById("zeit_art1").style.display="none";
	
	document.getElementById("zeit_art"+x).style.display="inline";

	document.getElementsByName("zeitart")[x].checked = true;
	
}


//prüft, ob meldtextdiv dekativiert sein muss
function pruefen(x, y){
	
	if(y == true){
		document.getElementById("meldtextdiv"+x).disabled = false;
	}
	else {
		document.getElementById("meldtextdiv"+x).disabled = true;
	}

}


// - - - - - - - - Speichern - - - - - - - -
function speich(x, y) {
	var altermeld="0";	
	var ueberpr=0;
	var jetzt = new Date();
	
	// - - - - Einmalig - - - -
	if(x == 0){
		
	  var jahr = jetzt.getFullYear().toString();
	  

		//prüfen ob alternativmeldung angezeigt werden soll
		if(document.getElementById("meldtext0").checked == true) altermeld="1";
		
		//prüfen ob meldung nachgereicht werden soll
		if(document.getElementById("nachreich0").checked == true) var nachreich="1";
		else var nachreich="0";
		
		
		//fehlende eintraege
	  for (var i=0; i<5; i++) {
			if (isNaN(document.b1.dat[i].value)) {
				document.b1.dat[i].focus();
				document.getElementById("stat0").style.background="red";
				document.getElementById("stat0").innerHTML=unguel; 
				ueberpr=1; 
				break;
			}
			if (document.b1.dat[i].value == "") {
				document.b1.dat[i].focus();
				document.getElementById("stat0").style.background="red";
				document.getElementById("stat0").innerHTML=fehlbei; 
				ueberpr=1; 
				break;
			}
		}
		if (ueberpr == 0) {
			
			// - - - - autokorrekturen - - - -
			
			//fehlende nullen
			if (document.b1.dat[0].value.length == 1) document.b1.dat[0].value=("0"+document.b1.dat[0].value);
			if (document.b1.dat[1].value.length == 1) document.b1.dat[1].value=("0"+document.b1.dat[1].value);
			if (document.b1.dat[3].value.length == 1) document.b1.dat[3].value=("0"+document.b1.dat[3].value);
			if (document.b1.dat[4].value.length == 1) document.b1.dat[4].value=("0"+document.b1.dat[4].value);
			
			
			//jahr interpretieren/vervollständigen
			if(document.b1.dat[2].value != ""){
				document.b1.dat[2].value = parseFloat(document.b1.dat[2].value);
		    if(eval(jahr.substring(0, (4-document.b1.dat[2].value.length))+document.b1.dat[2].value) < jahr){
					if(document.b1.dat[2].value.length < 4) document.b1.dat[2].value = eval(parseFloat(jahr.substring(0, (4-document.b1.dat[2].value.length)))+1)+document.b1.dat[2].value;
				}
				else document.b1.dat[2].value = jahr.substring(0, (4-document.b1.dat[2].value.length))+document.b1.dat[2].value;
			}
			
			
			//Datum erstellen, um zu prüfen, ob es korrekt ist	
			datum = new Array();
			for (var i=0; i<5; i++){
				datum[i] = document.b1.dat[i].value;	
			}
			dat1 = new Date(datum[1]+"/"+datum[0]+"/"+datum[2]+","+datum[3]+":"+datum[4]);
			//system "korrigiert" das datum automatisch, wenn es falsch ist, es macht also z.B. aus "29.02.2011" "01.03.2011".
		  
			
			
			// - - - - prüfen - - - -
			
			//tag
			if (document.b1.dat[0].value > 31 || document.b1.dat[0].value <= 0) {
				document.getElementById("stat0").style.background="red";
				document.getElementById("stat0").innerHTML=unguel;
				document.b1.dat[0].focus();
			}
		
			//monat
			else if (document.b1.dat[1].value > 12 || document.b1.dat[1].value <= 0) {
				document.getElementById("stat0").style.background="red";
				document.getElementById("stat0").innerHTML=unguel;
				document.b1.dat[1].focus();
			}
		  
			//stunde
			else if (document.b1.dat[3].value > 23 || document.b1.dat[3].value < 0) {
				document.getElementById("stat0").style.background="red";
				document.getElementById("stat0").innerHTML=unguel;
				document.b1.dat[3].focus();
			}
			//minute
			else if (document.b1.dat[4].value > 59 || document.b1.dat[4].value < 0) {
				document.getElementById("stat0").style.background="red";
				document.getElementById("stat0").innerHTML=unguel;
				document.b1.dat[4].focus();
			}
			
			
			//Ungültiges Datum? (30. Feb., 31. Nov, usw.)
			else if((dat1.getMonth()+1) != datum[1]){
				document.getElementById("stat0").style.background="red";
				document.getElementById("stat0").innerHTML=tagnoexi;
				document.b1.dat[0].focus();
			}
			//Ist Zeit abgelaufen?
			else if(dat1 < jetzt){
				document.getElementById("stat0").style.background="red";
				document.getElementById("stat0").innerHTML=ztabgel;
			}
			
			//fehlender text bei aktiviertem meldungstext
			else if(document.b1.dat[5].value == "" && altermeld == "1") {
				document.getElementById("stat0").style.background="red";
				document.getElementById("stat0").innerHTML=fehlbei;
				document.b1.dat[5].focus();
			}
			
			//Alles OK, speichern
			else{
				
				//Arrayeintrag zusammenstellen
				var tmp = document.b1.dat[0].value + document.b1.dat[1].value + document.b1.dat[2].value + document.b1.dat[3].value + document.b1.dat[4].value + nachreich + altermeld + document.b1.dat[5].value;
				
				//Schreibt Zeit
				if (typeof(y) == "undefined"){ //neuer eintrag
					auftraege[0].push(tmp);
				}
				else {	//bearbeiten
					auftraege[0][y] = tmp;
				}
				
				
				
				//Schreibt "sum"-Inhalt
				sumschreib(0);
				
				
				document.getElementById("stat0").innerHTML=auftrgesp;
				document.getElementById("stat0").style.background="#00CC33";
				
				
				setTimeout("zurueck(0, "+y+")", 500);
				
				ztensave();
				
			}
		}
	}
	
	// - - - - Wöchentlich - - - -
	if(x == 1){

		
		//prüfen ob alternativmeldung angezeigt werden soll
		if(document.getElementById("meldtext1").checked == true) altermeld="1";
		
		
		//heutige kalenderwoche ermitteln
		getKw = function(){	
			var donnerstag = function(datum){
			  var Do = new Date();
			  Do.setTime(datum.getTime() + (3-((datum.getDay()+6) % 7)) * 86400000);
			  return Do;
			}
			var Datum = new Date();
			var DoDat = donnerstag(Datum);
			var kwjahr = DoDat.getFullYear();
			var DoKW1 = donnerstag(new Date(kwjahr,0,4));
			var kw = Math.floor(1.5+(DoDat.getTime()-DoKW1.getTime())/86400000/7);
			return kw;
		};
		
		//prüfen ob meldung nachgereicht werden soll
		if(document.getElementById("nachreich1").checked == true) var nachreich = getKw();
		else var nachreich = "00";
		
		
		for (var i=0; i<2; i++) {
			if (isNaN(document.b2.dat2[i].value)) {
				document.b2.dat2[i].focus();
				document.getElementById("stat1").style.background="red";
				document.getElementById("stat1").innerHTML=unguel; 
				ueberpr=1; 
				break;
			}
			if (document.b2.dat2[i].value == "") {
				document.b2.dat2[i].focus();
				document.getElementById("stat1").style.background="red";
				document.getElementById("stat1").innerHTML=fehlbei; 
				ueberpr=1; 
				break;
			}
		}
		if (ueberpr == 0) {
			
			
			//fehlende nullen hinzufuegen
				
			if (document.b2.dat2[0].value.length == 1) document.b2.dat2[0].value=("0"+document.b2.dat2[0].value);
			if (document.b2.dat2[1].value.length == 1) document.b2.dat2[1].value=("0"+document.b2.dat2[1].value);
			
			
			//stunde
			if (document.b2.dat2[0].value > 23 || document.b2.dat2[0].value < 0) {
				document.getElementById("stat1").style.background="red";
				document.getElementById("stat1").innerHTML=unguel;
				document.b2.dat2[0].focus();
			}
			//minute
			else if (document.b2.dat2[1].value > 59 || document.b2.dat2[1].value < 0) {
				document.getElementById("stat1").style.background="red";
				document.getElementById("stat1").innerHTML=unguel;
				document.b2.dat2[1].focus();
			}
			
			
			//fehlender text bei aktiviertem meldungstext
			else if(document.b2.dat2[2].value == "" && altermeld == "1") {
				document.getElementById("stat1").style.background="red";
				document.getElementById("stat1").innerHTML=fehlbei;
				document.b2.dat2[2].focus(); 
			}
			
			
			//Alles OK, speichern
			else {
				
				//Gewählte Tage ermitteln
				var tg = new Array();
				
				if(nachreich == "00"){
					for(var i=0; i<7; i++){
						if(document.b2.gewtag[i].checked == true) tg[i] = "1";
						else tg[i] = "0";
					}
				}
				else{
					var WochTag = (jetzt.getDay()+6) % 7;
					
					var jetztNr_woech = ((jetzt.getHours() < 10) ? "0" : "") + jetzt.getHours() + ((jetzt.getMinutes() < 10) ? "0" : "") + jetzt.getMinutes();
					
					for(var i=0; i<7; i++){
						if(document.b2.gewtag[i].checked == true){
							if(i < WochTag || (i == WochTag && jetztNr_woech >= document.b2.dat2[0].value+document.b2.dat2[1].value)){
								tg[i] = "2";
							}
							else tg[i] = "1";
						}
						else tg[i] = "0";
					}
					
				}
				
				
				//Arrayeintrag zusammenstellen
				var tmp = tg[0] + tg[1] + tg[2] + tg[3] + tg[4] + tg[5] + tg[6] + document.b2.dat2[0].value + document.b2.dat2[1].value + nachreich + altermeld + document.b2.dat2[2].value;
				
				//Schreibt Zeit
				if (typeof(y) == "undefined"){ //neuer eintrag
					auftraege[1].push(tmp);
				}
				else { //bearbeiten
					auftraege[1][y] = tmp;
				}
				
				
				
				//Schreibt "sum2"-Inhalt
				sumschreib(1);
				
				
				document.getElementById("stat1").innerHTML=auftrgesp;
				document.getElementById("stat1").style.background="#00CC33";
				
				
				setTimeout("zurueck(1, "+y+");", 500);
				
				ztensave();
				
			}
		}
	}
}


//Aufträge in Textdateien schreiben
function ztensave(){
	
	//datei löschen wenn keine aufträge
	if(auftraege[0] == ""){
		if(fso.FileExists(pfad_einma)) fso.DeleteFile(pfad_einma, true);
	}
	else{
		//aufträge schreiben, bzw. Datei erstellen wenn nicht vorhanden
		fso_dat = fso.OpenTextFile(pfad_einma, 2, true, -1);
		fso_dat.Write(auftraege[0].join("\r\n"));
		fso_dat.close();
	}
	
	//datei löschen wenn keine aufträge
	if(auftraege[1] == ""){
		if(fso.FileExists(pfad_woech)) fso.DeleteFile(pfad_woech, true);
	}
	else{
		//aufträge schreiben, bzw. Datei erstellen wenn nicht vorhanden
		fso_dat = fso.OpenTextFile(pfad_woech, 2, true, -1);
		fso_dat.Write(auftraege[1].join("\r\n"));
		fso_dat.close();
	}
	
}


function einmaloesch(x, y){
	
	if (bestat(msd) == 6){
		auftraege[x].splice(y,1); 
		document.getElementById("stat"+x).style.background="#00CC33";
		document.getElementById("stat"+x).innerHTML=auftrgel;
		if (auftraege[x] != "") sumschreib(x); 
		else {
			leerschreib(x, kei);
			document.getElementById("loesch"+x).style.visibility="hidden";
		}
		setTimeout("zurueck("+x+", "+y+")", 500);
		ztensave();
	}
}


function zurueck(x, y){
	
	registerwechs(0,0);
	registerwechs(1,x);
	
	//--auftrag-editor für einmalig UND wöchentlich zurücksetzen--
	document.getElementById("stat0").innerHTML="";
	document.getElementById("stat1").innerHTML="";
	
	document.getElementById("stat0").style.background="none";
	document.getElementById("stat1").style.background="none";
	
	b1.reset();
	b2.reset();
	
	document.getElementById("meldtextdiv0").disabled = false;
	document.getElementById("meldtextdiv1").disabled = false;
	
	
	if(typeof(y) != "undefined"){
		//bestehender auftrag wurde editiert, entsprechende änderungen zurücksetzen
		document.getElementById("einloesch"+x).style.visibility="hidden";
		
		document.getElementById("spe1").onclick = new Function("speich(0);");
		document.getElementById("spe2").onclick = new Function("speich(1);");
		
		document.getElementById("einloesch0").onclick = new Function();
		document.getElementById("einloesch1").onclick = new Function();
		
		document.getElementById("zur1").onclick = new Function("zurueck(0);");
		document.getElementById("zur2").onclick = new Function("zurueck(1);");
	}
	
	setTimeout("document.getElementById(\"radios\").disabled=false;", 1);
	
	//text kürzen
	setTimeout("textkuerzen("+x+")", 1);
}


function del(x){
	
	if (bestat(msw) == 6){
		auftraege[x] = new Array();
		ztensave();
		document.getElementById("loesch"+x).style.visibility="hidden";
		leerschreib(x, allauftrgel);
		sumtime=window.setTimeout("leerschreib("+x+", kei);", 3000);
	}
}



// - - - - - - - - - - - - Einstellungen speichern - - - - - - - - - - - -

function SettingsClosing(event) {
	//OK Gewaehlt
	if (event.closeAction == event.Action.commit) {
		
		//Erweiterter Farbwähler
		System.Gadget.Settings.write("farbwae", document.getElementById("farbwae").checked);
		
		//Rahmengrundfarbe
		System.Gadget.Settings.write("farbe_rahm", farbe_rahm);
		
		//Hintergrundfarbe
		System.Gadget.Settings.write("farbe_hint", farbe_hint);
		
		//rahmenbreite
		System.Gadget.Settings.write("rahmbreite", document.getElementById("rahmbreite").selectedIndex);
		
		//Hintergrundeffekt
		System.Gadget.Settings.write("effekt", document.getElementById("effekt").selectedIndex);
		
		//Segment oder Ziffernblatt
		System.Gadget.Settings.write("uhr", uhr);
		
		//register merken
		System.Gadget.Settings.write("regspeich", document.getElementById("regspeich").checked);
		
		//auto-update
		System.Gadget.Settings.write("autoupdate", document.getElementById("autoupdate").checked);
	
		//Segmentfarbe
		System.Gadget.Settings.write("segfarb", document.getElementById("segfarb").selectedIndex+1);
		
		//segment: sekunden anzeigen
		System.Gadget.Settings.write("sek_segment", document.getElementById("sek_segment").checked);
		
		//segment: doppelte blinkgeschw.
		System.Gadget.Settings.write("blinkgeschw", document.getElementById("blinkgeschw").checked);
		
		//zifferblattfarbe
		System.Gadget.Settings.write("ziffblfarb", document.getElementById("ziffblfarb").selectedIndex+1);
		
		//stundenzeiger
		System.Gadget.Settings.write("hfarb", document.getElementById("hfarb").selectedIndex+1);
		
		//minutenzeiger
		System.Gadget.Settings.write("mfarb", document.getElementById("mfarb").selectedIndex+1);
		
		//sekundenzeiger
		System.Gadget.Settings.write("sfarb", document.getElementById("sfarb").selectedIndex+1);
			
		//sekundenzeiger
		System.Gadget.Settings.write("sek_zeiger", document.getElementById("sek_zeiger").checked);
	}
}