// Globale Variablen
var zahlcheck=1;


function rueckenstaerkebuch() // Hauptfunktion
{
 // Eingaben
 var page_u = 4;
 var page_d = 2;
 var page_v = 8;
 var gra_u = document.rueckenbuch.gramm_u.value;
 var vol_u = document.rueckenbuch.vol_u.value;
 var staerke_d = document.rueckenbuch.staerke_d.value;
 var gra_v = document.rueckenbuch.gramm_v.value;
 var vol_v =  document.rueckenbuch.vol_v.value;
 var gra_i = document.rueckenbuch.gramm_i.value;
 var page_i = document.rueckenbuch.seitenanz_i.value;
 var vol_i =  document.rueckenbuch.vol_i.value;
 // Eingabencheck
 pruefeZahl(page_i);
 if (zahlcheck==1)
 {
  // Berechnung
  page_i = seiten_gerade(page_i);
  var result_su = eval(page_u * gra_u * vol_u)/ 2000; // Staerke Umschlagbezug
  var result_sd = eval(staerke_d * page_d); // Staerke Decken
  var result_sv = eval(gra_v * page_v * vol_v)/ 2000; // Staerke Vorsatz
  var result_si = eval(gra_i * page_i * vol_i) / 2000; // Staerke Inhalt
  var result_sbrosch = eval(result_su + result_sd + result_sv + result_si); // Staerke Broschuere
  // Ausgabe
  print1_rueckenbuch(runden(parseFloat(result_su)) + " mm");
  print2_rueckenbuch(runden(parseFloat(result_sd)) + " mm");
  print3_rueckenbuch(runden(parseFloat(result_sv)) + " mm");
  print4_rueckenbuch(runden(parseFloat(result_si)) + " mm");
  print5_rueckenbuch(runden(parseFloat(result_sbrosch)) + " mm");    
 }
 else
  false;
}



function pruefeZahl(page_i) // Eingabencheck
{ 
  if (isNaN(page_i) || page_i =="")
  {
    print1_rueckenbuch("");
    print2_rueckenbuch("");
    print3_rueckenbuch("");
    print4_rueckenbuch("");
    print5_rueckenbuch("");
    document.rueckenbuch.seitenanz_i.focus();
    printErr_rueckenbuch("Geben Sie eine bitte Seitenzahl ein!");
    return zahlcheck=0;
   }
  else
  {
    printErr_rueckenbuch("");
  	return zahlcheck=1;
  }
}



function seiten_gerade(page_i) // Gerade Zahlen
{
 var rest = eval(page_i % 2);
 if (rest == 1)
 {
  page_i = eval(parseInt(page_i) +1);
  document.rueckenbuch.seitenanz_i.value = page_i;
 }
 return page_i;
}



function runden(x) // Runden auf zwei Nachkommastellen
{
  	var k = (Math.round(x * 100) / 100).toString();
 	k += (k.indexOf('.') == -1)? '.00' : '00';
  	var p = k.indexOf('.'), m = k.indexOf('-.');
  	var f = (p == 0 || m == 0)? '0,' : ',';
  	return k.substring(0, p) + f + k.substring(p+1, p+3);
}



function print1_rueckenbuch(x) // Ausgabe Staerke Umschlag
{
    var ausgabefeld = document.getElementById("ausgabe_sumschlag");
    ausgabefeld.removeChild(ausgabefeld.lastChild);
    ausgabefeld.appendChild(document.createTextNode(x));
}


function print2_rueckenbuch(x) // Ausgabe Staerke Decken
{
    var ausgabefeld = document.getElementById("ausgabe_sdecke");
    ausgabefeld.removeChild(ausgabefeld.lastChild);
    ausgabefeld.appendChild(document.createTextNode(x));
}



function print3_rueckenbuch(x) // Ausgabe Staerke Vorsatz
{
    var ausgabefeld = document.getElementById("ausgabe_svorsatz");
    ausgabefeld.removeChild(ausgabefeld.lastChild);
    ausgabefeld.appendChild(document.createTextNode(x));
}



function print4_rueckenbuch(x) // Ausgabe Staerke Inhalt
{
    var ausgabefeld = document.getElementById("ausgabe_sinhalt");
    ausgabefeld.removeChild(ausgabefeld.lastChild);
    ausgabefeld.appendChild(document.createTextNode(x));
}



function print5_rueckenbuch(x) // Ausgabe Staerke Broschuere
{
    var ausgabefeld = document.getElementById("ausgabe_sbrosch");
    ausgabefeld.removeChild(ausgabefeld.lastChild);
    ausgabefeld.appendChild(document.createTextNode(x));
}



function printErr_rueckenbuch(x) // Ausgabe Fehlermeldung
{
    var ausgabefeld = document.getElementById("ausgabe_fehler");
    ausgabefeld.removeChild(ausgabefeld.lastChild);
    ausgabefeld.appendChild(document.createTextNode(x));
}


function output() // Ausgabe in HTML-Dokument (Inhalt der Variable wird ausgegeben in einen html Bereich mit id "ausgabe_...")
{
    print1_rueckenbuch(runden(parseFloat(result_su)) + " mm");
    print2_rueckenbuch(runden(parseFloat(result_sd)) + " mm");
    print3_rueckenbuch(runden(parseFloat(result_sv)) + " mm");
    print4_rueckenbuch(runden(parseFloat(result_si)) + " mm");
    print5_rueckenbuch(runden(parseFloat(result_sbrosch)) + " mm");
}
