/*
(c) 2005 Marco Wienkoop
*/
//---------------------------------------------------------------------------------------------------------------
function numkey_check(feld,vorkomma,nachkomma) {
	var ZLK = document.getElementById(feld).value.length;
	var ZL  = ZLK -1;
//erstmal auf alphanumerische zeichen prüfen
	while(ZL >= 0){
		if ((document.getElementById(feld).value.charAt(ZL) < "0" || document.getElementById(feld).value.charAt(ZL) > "9") && document.getElementById(feld).value.charAt(ZL) != ",")	{
			if (ZL == ZLK){
				document.getElementById(feld).value="";
			}
			else{
//nimmt auch nicht-numerische zeichen innerhalb des strings raus, falls man mitten im text plötzlich ein zeichen eingibt!
				document.getElementById(feld).value=document.getElementById(feld).value.substr(0,ZL).concat(document.getElementById(feld).value.substring(ZL +1,ZLK));
			}
		}
//sonderfall Komma: Nur 1 Komma zulassen
//es ist nur das komma ganz rechts im string gültig!
		if (document.getElementById(feld).value.charAt(ZL) == ",") {
//prüfen, ob links danach noch mehrere kommata kommen, und diese dann löschen !
			if (ZL>0) {
				for (numi=(ZL-1);numi>=0;numi--) {
					if (document.getElementById(feld).value.charAt(numi) == ",") {
						document.getElementById(feld).value=document.getElementById(feld).value.substr(0,numi).concat(document.getElementById(feld).value.substring(numi +1,ZLK));
						numi--;
					}
				}
			}
		}
		ZL--;
	}
//dann auf vor- und nachkommastellen
//es ist gewährleistet, dass nur 1 Komma vorkommt
	woistkomma = document.getElementById(feld).value.indexOf(",");
	feldlang = document.getElementById(feld).value.length;		
	if (woistkomma ==-1 && feldlang > vorkomma) {
//letztes zeichen abschneiden, wenn eins zuviel (weil im regelfall hintereinander weg geschrieben wird...
		document.getElementById(feld).value = document.getElementById(feld).value.substr(0,feldlang-1);
	}
	if (woistkomma !=-1) {
		vorkommalang = woistkomma;
		nachkommalang = feldlang-woistkomma-1;
		if (vorkommalang > vorkomma) {
			document.getElementById(feld).value = document.getElementById(feld).value.substr(0,vorkommalang-1) + document.getElementById(feld).value.substr(vorkommalang,nachkommalang+1);
		}
		if (nachkommalang > nachkomma) {
			document.getElementById(feld).value = document.getElementById(feld).value.substr(0,vorkommalang) + document.getElementById(feld).value.substr(vorkommalang,nachkommalang); //inkl. komma
		}
//Sonderfall: KEINE Nachkommastellen, dann darf auch kein Komma eingegeben werden
		if (nachkomma == 0) {
			document.getElementById(feld).value = document.getElementById(feld).value.substr(0,vorkommalang);
		}
	}
}

//---------------------------------------------------------------------------------------------------------------
//erweiterte routine aus wienkoop.js mit zusätzlichem aufruf unten zum speichern des feldes und abfrage auf maxwert
function numblur_check(feld, vorkommastellen, nachkommastellen,vorkommafill,nachkommafill,maxwert) {
//kommastellen mit nullen ggf auffüllen
	if (vorkommafill == 0) {
		woistkomma = document.getElementById(feld).value.indexOf(",");
		feldlang = document.getElementById(feld).value.length;
		if (woistkomma != -1) {
			vorkommalang = woistkomma;
		}
		else {
			vorkommalang = feldlang;
		}
		if (vorkommalang < vorkommastellen) {
			for(vks=vorkommalang;vks<vorkommastellen;vks++) {
				document.getElementById(feld).value = "0" +document.getElementById(feld).value;
			}
		}
	}
	if (nachkommafill == 0) {
		woistkomma = document.getElementById(feld).value.indexOf(",");
		feldlang = document.getElementById(feld).value.length;
//anzahl vorhandener nachkommastellen ermitteln
		if (woistkomma !=-1) {
			nachkommalang = feldlang-woistkomma-1;
		}
		else {
			nachkommalang = 0;
			document.getElementById(feld).value += ",";
		}
		if (nachkommalang < nachkommastellen) {
			for(nks=nachkommalang;nks<nachkommastellen;nks++) {
				document.getElementById(feld).value += "0";
			}
		}
	}
	document.getElementById(feld).style.backgroundColor = "";
	if (maxwert != "") {
//prüfung auf maxwert. Komma in der Zahl vorher in Punkt umwandeln, damit eine evtl. Fliesskommazahl interpretiert wird
		enterwert = parseFloat(document.getElementById(feld).value.replace(/,/,"."));
		if (enterwert > parseFloat(maxwert)) {
			alert("Es darf nur ein maximaler Wert von "+maxwert+" eingegeben werden!\nDie Eingabe wird auf "+maxwert+" gesetzt");
			document.getElementById(feld).value = String(maxwert).replace(/\./,",");
		}
	}
}
//---------------------------------------------------------------------------------------------------------------
allowed_filetype = false;
function checkfiletype(feld,types,issubmit) {
	if (feld.value == "") {
		allowed_filetype = true;
	}
	else {
		types = types.toLowerCase();
		ul_filetype = feld.value.substr(feld.value.length-5,5);
		if (ul_filetype.indexOf(".") == -1) {
			starttext = "Dieser Dateityp";
			sucher = ul_filetype+"x";
		}
		else {
			endtype = ul_filetype.split(".");
			if (endtype[1] == "undefined") {endtype[1] = "";}
			sucher = endtype[1].toLowerCase();
			starttext = "Der Dateityp '"+sucher+"'";
		}
		if (types.indexOf(sucher) == -1) {
			alert(starttext+" ist nicht erlaubt.\nDie Datei '"+feld.value+"' kann nicht hochgeladen werden");
		}
		else {
			allowed_filetype = true;
		}
		if (document.getElementById("zipdepack") && issubmit==false) {
			if (sucher == "zip") {
				document.getElementById("zipdepack").checked = true;
				document.getElementById("zipdepack").disabled = false;
				document.getElementById("zdp").value = "X";
				document.getElementById("zipdepacktext").disabled = false;
			}
			else {
				document.getElementById("zipdepack").checked = false;
				document.getElementById("zipdepack").disabled = "disabled";
				document.getElementById("zdp").value = "";			
				document.getElementById("zipdepacktext").disabled = "disabled";
			}
		}
	}
}
//---------------------------------------------------------------------------------------------------------------
function punktzeit(uhrzeit) {
	return uhrzeit.substr(0,2)+":"+uhrzeit.substr(2,2)+":"+uhrzeit.substr(4,2);
}
//---------------------------------------------------------------------------------------------------------------
