//   SECTOR27 - Hundenborn + Kiy GmbH, Dorsten - cb^2
//   http://www.SECTOR27.de - eMail: info@sector27.de
//   CGI-/ Perl-Programmierungen, Webapplikationen, 
//   HTML, XHTML, DHTML, CSS, JavaScript, Webdesign 
//   Alle Rechte vorbehalten  - (c)2002 by Sector27

/* Funktionsbeschreibungen ---------------------------------------------------
	setRealTimeout(f,w)		setTimeout-Funktion die aber reale Zeit beruecksichtigt 
	  (f=Funktionsname, w=wartezeit(in Millisekunden 1000ms=1s), s=wird nicht beim start initialisiert!)
}
*/

function setRealTimeout(f,w,s){
   jetzt = new Date(); zeitwert = jetzt.getTime();
   if(s){if(zeitwert<(s+w)){setTimeout('setRealTimeout('+f+','+w+','+s+')', 100);}else{eval("f()");}
   }else{s = zeitwert;setTimeout('setRealTimeout('+f+','+w+','+s+')', 100);}
}


// Umwandlung einer aus Zahlen und ,|. bestehenden Eingabe in das Format xxx.xxx
// erwartete Übergabewerte: Formularname, Feldindex
// Rückgabewert xxx.xxx|false (wenn Feld leer oder Buchstaben enthalten)
function dezimalformat(formularname,feldname,meldung,kommastellen){
	ok=1;
	testwert = eval(formularname+"."+feldname+".value");
	if(testwert==""){testwert="0.0";}
	if(testwert!=""){
		gefunden = testwert.match(/[^0-9,\.]/);
		if(gefunden){ok=0;}
		neuerwert = testwert.replace(/,/g,".");
		punkte = neuerwert.match(/\./g);
		if(!punkte){neuerwert += ".0"; punkte=1;}
		if(punkte.length > 1){for(i=1;i<punkte.length;i++){neuerwert = neuerwert.replace(/\./,"");}}
		elemente = neuerwert.split(".");	
		nachkomma = elemente[1];	
		if(nachkomma.length < kommastellen){for(i=nachkomma.length;i<kommastellen;i++){neuerwert = neuerwert + "0";}}
		// Runden, wenn Eingabewert mehr Kommastellen als Ausgabeformat
		if(nachkomma.length > kommastellen){
			differenz = nachkomma.length-kommastellen;
			for(i=1;i<=differenz;i++){nachkomma = nachkomma/10;}
			nachkomma = Math.round(nachkomma);
			neuerwert = elemente[0]+"."+nachkomma;
			}
		// Ende Runden	
		vorkomma = elemente[0];
		if(vorkomma.length == 0){neuerwert = "0"+neuerwert;}
		}
	else{ok=0;}
	if(ok==0){
		if(meldung==1){alert("Ungültige Eingabe, kein Zahlenwert");}
		return false;
		}
	else{	eval(formularname+"."+feldname).value = neuerwert;
			return neuerwert;
			}
}
