function EPr(elmt){
  if (window.event.keyCode == 13){
    CalcAutorad(elmt);
    CalcGMRad(elmt);
  }
  else
  {
    elmt.form.le0.value = "";
    elmt.form.le1.value = "";
    elmt.form.le2.value = "";
    elmt.form.hi0.value = "";
    elmt.form.hi1.value = "";
    elmt.form.hi2.value = "";
    elmt.form.gm0.value = "";
    elmt.form.gm1.value = "";
    elmt.form.gm2.value = "";
  }
}

function EPf(elmt){
  if (window.event.keyCode == 13){
    CalcFelge(elmt);
    CalcGMRad(elmt);
  }
  else
  {
    elmt.form.le0.value = "";
    elmt.form.le1.value = "";
    elmt.form.le2.value = "";
    elmt.form.hi0.value = "";
    elmt.form.hi1.value = "";
    elmt.form.hi2.value = "";
    elmt.form.gm0.value = "";
    elmt.form.gm1.value = "";
    elmt.form.gm2.value = "";
  }
}

function GM2(le,hi){
le = eval(le);
hi = eval(hi);
  if (le > hi) gm = 2 * (le + hi) + le;
  else         gm = 4 * le + hi;
  return gm;
}

function CalcGMRad(elmt){
var le,hi,gm;
elmt.form.gm0.value = GM2(elmt.form.le0.value, elmt.form.hi0.value);
elmt.form.gm1.value = GM2(elmt.form.le1.value, elmt.form.hi1.value);
elmt.form.gm2.value = GM2(elmt.form.le2.value, elmt.form.hi2.value);
}

function CalcAbmRad(elmt,anz){
var WarnMsg,val,kg,kgps,le,wi,hi,anz;
WarnMsg = "";

val = SucheErsetze(elmt.value,",",".")
elmt.value = val;
kgps = (val - 2) / anz;
alert(kgps);

if (elmt.name.substring(0,2) == "kg"){
  if (isNaN(val) == true || kgps < 2 || kgps > 50){
    WarnMsg = "Gewicht eines Rads muss zwischen 2 und 50 kg liegen";
  }
  else
  {
    elmt.form.kg0.value = (kgps) + 2;
    elmt.form.kg1.value = (kgps * 2) + 2;
    elmt.form.kg2.value = (kgps * 4) + 2;
  }
}
if (elmt.name.substring(0,2) == "hi"){
  if (isNaN(val) == true || kgps < 2 || kgps > 50){
    WarnMsg = "Höhe (Dicke) eines Rads muss zwischen 2 und 50 cm liegen";
  }
  else
  {
    elmt.form.hi0.value = kgps + 2;
    elmt.form.hi1.value = kgps * 2 + 2;
    elmt.form.hi2.value = kgps * 4 + 2;
  }
}
if (elmt.name.substring(0,2) == "le"){
  if (isNaN(val) == true || val < 20 || val > 170){
    WarnMsg = "Raddurchmesser muss zwischen 20 und 170 cm liegen!";
  }
  else
  {
    elmt.form.le0.value = val
    elmt.form.le1.value = val
    elmt.form.le2.value = val
  }
}

if (WarnMsg != "") alert(WarnMsg);
else  CalcGMRad(elmt);
  //elmt.form.GetElementById(elmt.id).focus();
}

function CalcFelge(elmt)
{
var rd,le,wi,hi
  elmt.form.rwi.value = SucheErsetze(elmt.form.rwi.value,",",".")
  hi = elmt.form.rwi.value
  if (isNaN(hi) == true || hi < 2 || hi > 30){
    alert("Felgenbreite muss zwischen 2 und 30 Zoll liegen!")
    elmt.form.rwi.focus();
  }
  else{
    elmt.form.rid.value = SucheErsetze(elmt.form.rid.value,",",".")
    rd = elmt.form.rid.value
    if (isNaN(rd) == true || rd < 5 || rd > 25){
      alert("Felgendurchmesser muss zwischen 5 und 25 Zoll liegen!")
      elmt.form.rid.focus();
    }
    else{
      le = eval(Trim0(elmt.form.rid.value * 2.54));
      hi = eval(Trim0(elmt.form.rwi.value * 2.54 + 2.5)) ;
      elmt.form.hi0.value = hi + 2;
      elmt.form.hi1.value = hi * 2 + 2;
      elmt.form.hi2.value = hi * 4 + 2;
      elmt.form.le0.value = le + 2;
      elmt.form.le1.value = le + 2;
      elmt.form.le2.value = le + 2;
    }
  }
}

function CalcAutorad(elmt)
{
var rd,le,wi,hi
  elmt.form.rwi.value = SucheErsetze(elmt.form.rwi.value,",",".")
  hi = elmt.form.rwi.value
  if (isNaN(hi) == true || hi < 50 || hi > 495){
    alert("Reifenbreite muss zwischen 50 und 495 mm liegen!")
    elmt.form.rwi.focus();
  }
  else{
    elmt.form.rhi.value = SucheErsetze(elmt.form.rhi.value,",",".")
    le = elmt.form.rhi.value
    if (isNaN(le) == true || le < 20 || le > 100){
      alert("Relative Schulterhöhe muss zwischen 20 und 100% liegen!")
      elmt.form.rhi.focus();
    }
    else{
      elmt.form.rid.value = SucheErsetze(elmt.form.rid.value,",",".")
      rd = elmt.form.rid.value
      if (isNaN(rd) == true || rd < 5 || rd > 25){
        alert("Felgendurchmesser muss zwischen 5 und 25 Zoll liegen!")
        elmt.form.rid.focus();
      }
      else{
        rd = eval(Trim0(elmt.form.rid.value * 2.54));
        hi = eval(Trim0(elmt.form.rwi.value / 10)) ;
        le = eval(Trim0(elmt.form.rhi.value * hi / 100 * 2));
        le = le + rd
        elmt.form.hi0.value = hi + 2;
        elmt.form.hi1.value = hi * 2 + 2;
        elmt.form.hi2.value = hi * 4 + 2;
        elmt.form.le0.value = le + 2;
        elmt.form.le1.value = le + 2;
        elmt.form.le2.value = le + 2;
      }
    }
  }
}

function SendAutorad(elmt,kg,le,hi)
{
elmt.form.kg.value = kg.value;
elmt.form.le.value = le.value;
elmt.form.hi.value = hi.value;
elmt.form.wi.value = le.value;
}

function CalcFahrrad(elmt)
{
var Ple, Pwi, Phi, Pkg

//alert(document.fahrrad.FahrradGr.length);

  if (document.fahrrad.FahrradGr[0].checked == true){
    Pkg = 18;
    if (document.fahrrad.FahrradZerl[0].checked == true){
       Ple = 162;
       Phi = 92;
       Pwi = 38;
    }
    if (document.fahrrad.FahrradZerl[1].checked == true){
      Ple = 129;
      Phi = 71;
      Pwi = 16;
    }
    if (document.fahrrad.FahrradZerl[2].checked == true){
      Ple = 100;
      Phi = 52;
      Pwi = 16;
    }
  }
  if (document.fahrrad.FahrradGr[1].checked == true){
    Pkg = 20;
    if (document.fahrrad.FahrradZerl[0].checked == true){
       Ple = 170;
       Phi = 100;
       Pwi = 39;
    }
    if (document.fahrrad.FahrradZerl[1].checked == true){
      Ple = 136;
      Phi = 80;
      Pwi = 17;
    }
    if (document.fahrrad.FahrradZerl[2].checked == true){
      Ple = 105;
      Phi = 58;
      Pwi = 17;
    }
  }
  if (document.fahrrad.FahrradGr[2].checked == true){
    Pkg = 22;
    if (document.fahrrad.FahrradZerl[0].checked == true){
       Ple = 177;
       Phi = 104;
       Pwi = 40;
    }
    if (document.fahrrad.FahrradZerl[1].checked == true){
      Ple = 142;
      Phi = 87;
      Pwi = 18;
    }
    if (document.fahrrad.FahrradZerl[2].checked == true){
      Ple = 107;
      Phi = 67;
      Pwi = 18;
    }
  }
  if (document.fahrrad.FahrradGr[3].checked == true){
    Pkg = 24;
    if (document.fahrrad.FahrradZerl[0].checked == true){
       Ple = 182;
       Phi = 107;
       Pwi = 40;
    }
    if (document.fahrrad.FahrradZerl[1].checked == true){
      Ple = 147;
      Phi = 93;
      Pwi = 18;
    }
    if (document.fahrrad.FahrradZerl[2].checked == true){
      Ple = 112;
      Phi = 73;
      Pwi = 18;
    }
  }
      elmt.form.kg.value = Pkg;
      elmt.form.le.value = Ple;
      elmt.form.wi.value = Pwi;
      elmt.form.hi.value = Phi;
      CalcGM(elmt.form.id);
}

function CalcPLe(feld)
{
var skile, le;
skile = SucheErsetze(document.getElementById(feld.form.id).skile.value,",",".");
if (isNaN(skile) == true || skile <= 0 || skile > 328){
  alert("Die Länge muss zwischen 0 und 328 cm liegen!");
  document.getElementById(feld.form.id).skile.focus();
}
else{
  document.getElementById(feld.form.id).skile.value = Trim0(skile);
  le = eval(skile) + 2;
  document.getElementById(feld.form.id).le.value = Trim0(le);
  CalcGM(feld.form.id);
}
}

function CalcGM(id)
{
var le, wi, hi, gm;
var WarnMsg = "";
le = SucheErsetze(document.getElementById(id).le.value,",",".");
if (isNaN(le) == true || le <= 0 || le > 330){
  WarnMsg = "Die Paketlänge muss zwischen 0 und 330 cm liegen!";
  alert(WarnMsg);
  document.getElementById(id).le.focus();
}
wi = SucheErsetze(document.getElementById(id).wi.value,",",".");
if (isNaN(wi) == true || wi <= 0 || wi > 200){
  WarnMsg = "Die Breite bzw. Höhe muss zwischen 0 und 200 cm liegen!";
  alert(WarnMsg);
  document.getElementById(id).wi.focus();
}
hi = SucheErsetze(document.getElementById(id).hi.value,",",".");
if (isNaN(hi) == true || hi <= 0 || hi > 200){
  WarnMsg = "Die Breite bzw. Höhe muss zwischen 0 und 200 cm liegen!";
  alert(WarnMsg);
  document.getElementById(id).hi.focus();
}
if (WarnMsg == ""){
  document.getElementById(id).le.value = Trim0(le);
  document.getElementById(id).wi.value = Trim0(wi);
  document.getElementById(id).hi.value = Trim0(hi);
  gm = eval(le) + 2 * (eval(wi) + eval(hi));
  document.getElementById(id).gm.value = Trim0(gm);
}

}

function EP(feld,doNext)
{
  if (window.event.keyCode == 13){
    if (doNext == "CalcPLe") CalcPLe(feld.form.id);
    if (doNext == "CalcGM") CalcGM(feld.form.id);
  }
  else{
    document.getElementById(feld.form.id).gm.value = "";
    if (feld.name == "skile") document.getElementById(feld.form.id).le.value = "";
  }
}

function Numsort(c,b)
{
  return eval(c.substring(0,10)) - eval(b.substring(0,10));
}

function Numsort2(c,b)
{
  return c-b;
}

function Trim(Zahl,Maxkomma)
{
  if (typeof Zahl != "number"){
    return(Zahl);
  }
  else
  {
    var Numzahl   = eval(Zahl);
    var Vorkomma  = Math.floor(Numzahl);
    var Nachkomma = Numzahl - Vorkomma;
    var Potenz    = Math.pow(10,Maxkomma);
    Nachkomma     = Math.round(Nachkomma * Potenz);
    var Ergebnis  = Vorkomma + (Nachkomma / Potenz);
    return(Ergebnis);
  }
}

function Trim0(x) {
  var k = (Math.round(x)).toString();
  k += (k.indexOf('.') == -1)? '.00' : '00';
  return k.substring(0, k.indexOf('.') + 0);
}
function Trim2(x) {
  var k = (Math.round(x * 100) / 100).toString();
  k += (k.indexOf('.') == -1)? '.00' : '00';
  return k.substring(0, k.indexOf('.') + 3);
}

function SucheErsetze(Text,Suche,Ersetze)
{
  var Neutext = "";
  var i = 0;
  while(i < Text.length)
  {
    if(Text.substring(i,i + Suche.length) == Suche)
    {
      Neutext = Neutext + Ersetze;
      i = i + Suche.length - 1;
    }
    else
      Neutext = Neutext + Text.substring(i,i + 1);
      i++;
  }
  return Neutext;
}