function drucken(preis, lfz, mvz, restwert, rate, version){
	version = version.replace(",",".");
	window.location.href="pdferzeuger.php?preis=" + preis + "&lfz=" + lfz + "&mvz=" + mvz + "&restwert=" + restwert + "&rate=" + rate + "&version=" + version
}

function checkNumber(input, min, max, msg){
    msg = msg + " nicht möglich: " + input.value;
	var str = input.value.replace(".","");
	var str = str.replace(/,/,".");
    for (var i = 0; i < str.length; i++) {
        var ch = str.substring(i, i + 1)
        if ((ch < "0" || "9" < ch) && ch != '.' && ch != '-') {
            alert(msg);
            return false;
        }
    }

    var num = parseFloat(str)
    if (num < min) {
        alert(msg + " Bitte geben Sie als Wert mindestens [" + min + "] ein");
        return false;
    }
	
	var num = parseFloat(str)
    if (num > max) {
        alert(msg + " Bitte geben Sie als Wert maximal [" + max + "] ein");
        return false;
    }
    return true;
}

function computeField(input){
	var einwert = input.value.replace(/,/,".");
	//alert ("computeField " + input.value + "  " + einwert);
    var einwert = input.value.replace(/,/,".");
    computeForm(input.form);

}

function computeForm(form){
	var kom = form.lfz.value.indexOf(",");
	var pun = form.lfz.value.indexOf(".");
	if (kom > 0 || pun > 0)
	{ 
	alert (" Bei der Laufzeit sind weder Punkt noch Komma möglich");
	return;
	}
    if ((form.lfz.value == null || form.lfz.value.length == 0) ||
        (form.preis.value == null || form.preis.value.length == 0) ||
        (form.mvz.value == null || form.mvz.value.length == 0) ||
        (form.restwert.value == null || form.restwert.value.length == 0)) {
        return;
    }
		var maxanzr = form.preis.value.replace(".","");
		var maxanzr = maxanzr.replace(/,/,".");
		var maxanz  = (maxanzr/100)*form.anzmax.value;
		var maxrw   = (maxanzr/100)*form.rwmax.value;
      if (!checkNumber(form.preis, form.kpmin.value, form.kpmax.value, "Preis") ||
		!checkNumber(form.preis2, -10, form.provmax.value, "Kennung")  ||
	  	!checkNumber(form.lfz, form.lfzmin.value, form.lfzmax.value, "Anzahl Monate") ||
        !checkNumber(form.mvz, 0, maxanz, "Anzahlung")  ||
        !checkNumber(form.restwert, 0  , maxrw , "Restwert")) {
        form.rate.value = "Falscher Wert! Bitte korrigieren Sie den Wert! - Danke!";
        return;  
    }
{
var j = 0;
var strpr = form.preis.value.replace(".","");
var strpr = strpr.replace(/,/,".");
var strrr = form.preis2.value.replace(".","");
var strrr = strrr.replace(/,/,".");
var strrw = form.restwert.value.replace(".","");
var strrw = strrw.replace(/,/,".");
var strmv = form.mvz.value.replace(".","");
var strmv = strmv.replace(/,/,".");
strpr = strpr * 1.00;
strmv = strmv * 1.00;
strrr = strrr * 1.00;
strrw = strrw * 1.00;

for (i=0; i < zz; ++i){ 
	if (strpr <= zinstab[i][1]){
		j = i;
		i = 9999;
	}
}
	strrr = strrr * 1.0;
	var prov = (strpr/100)*strrr;
	var rechenpreis = prov + strpr*1.0;
	var rechprozent = zinstab[j][0]*1.0;
    var l1 = rechprozent/1200;
    var l2 = 1+l1;
    var l3 = 1 / l2;
    var l4 = l3
    var pow = 1;

    for (var j = 1; j < form.lfz.value; j++)
        l4 = l4 * l3;
        var l5 = (1-l4)/l1;
        var l6=-strrw*l4+rechenpreis-strmv;
        var l7=l2*l5;
        var wert = l6/l7;
		var rate1=kaufm(wert);
		var len = rate1.length;
		rate1 = rate1.replace(".",",");
		if (rate1.length > 6)
		{
		var vt = rate1.substr(0,rate1.length-6) + "." + rate1.substr(rate1.length-6,6);
		rate1 = vt;
		}
		form.rate.value = rate1;
// Anzeige mit Punkt und Komma
		var str = form.preis.value.replace(".","");
		var str = str.replace(/,/,".");
		var str = kaufm(str);
		str = str.replace(".",",");
		if (str.length > 6)
		{
		var vt = str.substr(0,str.length-6) + "." + str.substr(str.length-6,6);
		str = vt;
		}
		form.preis.value = str;
		var str = form.mvz.value.replace(".","");
		var str = str.replace(/,/,".");
		var str = kaufm(str);
		str = str.replace(".",",");
		if (str.length > 6)
		{
		var vt = str.substr(0,str.length-6) + "." + str.substr(str.length-6,6);
		str = vt;
		}
		form.mvz.value = str;
		var str = form.restwert.value.replace(".","");
		var str = str.replace(/,/,".");
		var str = kaufm(str);
		str = str.replace(".",",");
		if (str.length > 6)
		{
		var vt = str.substr(0,str.length-6) + "." + str.substr(str.length-6,6);
		str = vt;
		}
		form.restwert.value = str;
		var str = form.preis2.value.replace(".","");
		var str = str.replace(/,/,".");
		var str = kaufm(str);
		str = str.replace(".",",");
		if (str.length > 6)
		{
		var vt = str.substr(0,str.length-6) + "." + str.substr(str.length-6,6);
		str = vt;
		}
		form.preis2.value = str;
}

function clearForm(form)
{
    form.lfz.value = "";
    form.mvz.value = "";
    form.restwert.value = "";
}
function kaufm(x) {
  var k = (Math.round(x * 100) / 100).toString();
  k += (k.indexOf('.') == -1)? '.00' : '00';
  return k.substring(0, k.indexOf('.') + 3);
}
}