// Projekt Komplettrad
// Last updated 21.11.2007
// Version     : 1.5.1
// State       : stable


function aktualisieren(Form){
         // BreiteAuslesen (Form);
         // BreiteAuslesen(document.getElementsByClass('orderComm1')[0]);
         // alert (Form);
         ReadGeometrie (Form);
         Form.Session_Detail.value = '0';
         Form.submit();
}
function aktualisieren_1(Form, wert){
         Form.Hersteller.value=wert;
         ReadGeometrie (Form);
         Form.action=Form.action + "#brand";
         Form.submit();
}
function aktualisieren_2(Form, wert){
         Form.Modelle.value=wert;
         // ReadGeometrie (Form);
         Form.action=Form.action + "#model";
         Form.submit();
}
function aktualisieren_3(Form, typ , hub, kw, typcode){
         Form.Typ.value=typ;
         Form.Hub.value=hub;
         Form.KW.value=kw;
         Form.TypCode.value=typcode;
         // ReadGeometrie (Form);
         Form.submit();
}

function aktualisieren_4(Form, hsn, tsn){
         Form.HSN.value=hsn;
         Form.TSN.value=tsn;
         // ReadGeometrie (Form);
         Form.submit();
}

function reset(Form){
         ReadGeometrie (Form);
         Form.reset();
}

function reset_Session(Form, hersteller, model) {
         Form.Session_Clear.value = '1';
         Form.Hersteller.value=hersteller;
         Form.Modelle.value=model;
         ReadGeometrie (Form);
         Form.submit();
}

function select_image(Form, Typ, Hersteller) {
         Form.RadTypen.value = Typ;
         Form.RadHersteller.value = Hersteller;
         Form.RadHerstellerFilter.value = Hersteller;
         Form.Session_Detail.value = '0';

         Form.action=Form.action + "#MontageBildPKW_hg";
         // ReadGeometrie (Form);
         Form.submit();
}

function list_sort(Form, Wert) {
         //alert (Wert);
         Form.List_Sort.value = Wert;
         // ReadGeometrie (Form);
         Form.submit();
}

function show_details(Form, Wert) {
         Form.Session_Detail.value = Wert;
         // ReadGeometrie (Form);
         Form.submit();
}

function set_focus(felge) {
    // Fokus beim Seitenaufbau auf die ausgewaehlte Felge setzen
    if (document.getElementsByName(felge)) {
        document.getElementsByName(felge)[0].focus();
    }
}

function ReadGeometrie (Form) {
         // Startformbreite
         try {
             // alert(document.getElementById('startform').parentNode.offsetWidth);
             // alert(document.getElementById('startform').parentNode.offsetHeight);
             Form.Width.value=document.getElementById('startform').parentNode.offsetWidth;
             Form.Height.value=document.getElementById('startform').parentNode.offsetHeight;
         }
         catch(e) {}

         // Form.Width.value = Form.offsetWidth;
         // Form.Height.value = Form.offsetHeight;
         // alert (Form.offsetWidth);
         // alert (Form.offsetHeight);
         // alert (document.documentElement.clientWidth);
         // alert (document.documentElement.clientHeight);
}


function ReadGeometrieWindow (Form) {
         if (Form.innerHeight) // all except Explorer
         {
         	Form.Width.value = Form.innerWidth;
         	Form.Height.value = Form.innerHeight;
         }
         else if (document.documentElement && document.documentElement.clientHeight)
         	// Explorer 6 Strict Mode
         {
         	Form.Width.value = document.documentElement.clientWidth;
         	Form.Height.value = document.documentElement.clientHeight;
         }
         else if (document.body) // other Explorers
         {
         	Form.Width.value = document.body.clientWidth;
         	Form.Height.value = document.body.clientHeight;
         }
         // alert (Form.Width.value);
         alert (Form.offsetWidth);
         alert (Form.offsetHeight);
}

/* Neues Fenster */
function NeuesFenster(datei,name,breite,hoehe){
         //alert (datei);
         //Fenster = window.open(datei,name,"width="+breite+",height="+hoehe+",left=10,top=10,dependent=yes,location=no,menubar=yno,toolbar=yes,scrollbars=yes,status=no");
         Fenster = window.open("about:blank",name,"width="+breite+",height="+hoehe+",left=10,top=10,dependent=yes,location=no,menubar=yno,toolbar=yes,scrollbars=yes,status=no");
         Fenster.document.write(datei);
         Fenster.document.close();
         Fenster.focus();
}
/* Farben und Tieferlegen */

function AutoFarbe(neueFarbe) {
    // Funktion wechselt die Farbe des Autos
    var alteURL = document.getElementById("MontageBildPKW_vg").src;
    var reAlt = /\/([a-z]{3,5})_t\//;
    var alteFarbe = reAlt.exec(alteURL);
    var re = new RegExp('\/' + RegExp.$1 + '_t\/');
    var neueURL = alteURL.replace(re, '\/' + neueFarbe + '_t\/');
// WTF
    document.getElementById("MontageBildPKW_vg").src = neueURL;
//    document.Form1.Farbe.value = neueFarbe;

    return true;
}


function getStyle(el, st) {
    // Liest eine CSS-Eigenschaft browserunanbhaengig aus
    var x = document.getElementById(el);
    if (x.currentStyle) {
        var y = x.currentStyle[st];
    } else if (window.getComputedStyle) {
        var y = document.defaultView.getComputedStyle(x,null).getPropertyValue(st);
    }
    return y;
}

function tieferlegen() {
    // Auto tiefer legen
    // Maximum: 16px
    var max = 16;
    // Minimum: 0px;
    var min = -16;
    // Schritt
    var schritt = 2;
    // Aktuelle Position
    var auto = document.getElementById("MontageBildPKW_vg");
    // IE oder nicht?
    var y = parseInt(getStyle("MontageBildPKW_vg", "top"));

    if (y < max) {
        // tiefer legen erlaubt
        y = y + schritt;
     //   auto.style.top = y + 'px';
        if (y == max) {
            // Jetzt ist max erreicht, also Knopf ausblenden
            document.getElementById("img_Tiefer").style.visibility = "hidden";
        }
        setTimeout("tieferlegen_smooth(" + 1 + "," + schritt + ")",25 );
    }
    if (y > min) {
        document.getElementById("img_Hoeher").style.visibility = "visible";
    }
}

function hoeherlegen() {
    // Auto hoeher legen
    // Maximum: 16px
    var max = 16;
    // Minimum: 0px;
    var min = -2;
    // Schritt
    var schritt = 2;
    // Aktuelle Position
    var auto = document.getElementById("MontageBildPKW_vg");
    // IE oder nicht?
    var y = parseInt(getStyle("MontageBildPKW_vg", "top"));


    if (y > min) {
        // hoeher legen erlaubt
        y = y - schritt;
//        auto.style.top = y + 'px';
        if (y == min) {
            // Jetzt ist min erreicht, also Knopf ausblenden
            document.getElementById("img_Hoeher").style.visibility = "hidden";
        }
        setTimeout("hoeherlegen_smooth(" + 1 + ", " + schritt + ")",25 );
    }
    if (y < max) {
        document.getElementById("img_Tiefer").style.visibility = "visible";
    }
}

function hoeherlegen_smooth(i, s) {
    // Aktuelle Position
    var auto = document.getElementById("MontageBildPKW_vg");
    // IE oder nicht?
    var y = parseInt(getStyle("MontageBildPKW_vg", "top"));
    if (i <= s ) {
        y = y - 1;
        auto.style.top = y + 'px';
        i++;
        setTimeout("hoeherlegen_smooth(" + i + ", " + s + ")",25 );
    }
}

function tieferlegen_smooth(i, s) {
    // Aktuelle Position
    var auto = document.getElementById("MontageBildPKW_vg");
    // IE oder nicht?
    var y = parseInt(getStyle("MontageBildPKW_vg", "top"));
    if (i <= s ) {
        y = y + 1;
        auto.style.top = y + 'px';
        i++;
        setTimeout("tieferlegen_smooth(" + i + ", " + s + ")",25 );
    }
}

/* Dropdown in CSS/JS */
function klappen(liste) {
  var n = liste.parentNode.getElementsByTagName("ul")[0];
  if (n.className == 'ausgeklappt') {
    n.className = 'eingeklappt';
    liste.previousSibling.childNodes[0].nodeValue = '[+] ';
  } else {
    var a = document.getElementById('liste3').childNodes;
    for (var i=0; i < a.length; i++) {
      if (a[i].getElementsByTagName('ul')[0].className == 'ausgeklappt') {
        a[i].getElementsByTagName('ul')[0].className = 'eingeklappt';
        a[i].getElementsByTagName('span')[0].firstChild.nodeValue = '[+] ';
      }
    }

    liste.previousSibling.childNodes[0].nodeValue = '[-] ';
    n.className = 'ausgeklappt';
    liste.scrollIntoView();
  }
}

/* Init */
function init_kprd() {
  // form_1 dropdown-listen
  if (document.getElementById('startform')) {
    var list1 = document.getElementsByTagName('li');
    var j = 0;
    for (var i=0; i < list1.length; i++) {
      if (list1[i].className == 'dropdown') {
        list1[i].getElementsByTagName('ul')[0].className = 'eingeklappt';
        list1[i].getElementsByTagName('span')[0].onclick = function () { klappen(this) };

        var plus = document.createElement('span');
        var messageNode = document.createTextNode('[+] ');
        plus.appendChild(messageNode);
        list1[i].insertBefore(plus, list1[i].firstChild);

//         if (j == 0) {
//           klappen(list1[i].getElementsByTagName('span')[1]);
//         }
        j++;
      }
    }

  }
  // Sorttable und Zebra
  if(document.getElementById('tyre_choice')) {
    var tc = document.getElementById('tyre_choice');
    zebraTable(tc);

    for (var i=0; i < tc.rows[0].cells.length; i++) {
      try {
        tc.rows[0].cells[i].normalize();
        var th = tc.rows[0].cells[i].getElementsByTagName('span')[0];
        var thname = th.childNodes[1].nodeValue;
        tc.rows[0].cells[i].removeChild(th);
        tc.rows[0].cells[i].appendChild(document.createTextNode(thname));
      } catch (e) {
      }
    }
  }
}

/* Felgen filtern */
function filter_rim(brand) {
  var brandre = eval( '/^' + brand + '/' );
  var rows = document.getElementById('Images').getElementsByTagName('table')[0].rows;
  for (i=0; i < rows[0].cells.length; i++) {
    var cell1 = rows[0].cells[i];
    var cell2 = rows[1].cells[i];
    if (brand == '...') {
      // Alle anzeigen, weil kein Filter
      cell1.style.display = 'table-cell';
      cell2.style.display = 'table-cell';
    } else if (brandre.test(cell1.childNodes[0].title)) {
      // Treffer
      cell1.style.display = 'table-cell';
      cell2.style.display = 'table-cell';
    } else {
      // kein Treffer
      cell1.style.display = 'none';
      cell2.style.display = 'none';
    }
  }
}

/* Reifen filtern */
function filter_tyre(brand) {
  var brandre = eval( '/^' + brand + '/' );
  var rows = document.getElementById('tyre_choice').getElementsByTagName('table')[0].rows;
  for (i=0; i < rows[0].cells.length; i++) {
    var cell1 = rows[0].cells[i];
    var cell2 = rows[1].cells[i];
    if (brand == ' ') {
      // Alle anzeigen, weil kein Filter
      cell1.style.display = 'table-cell';
      cell2.style.display = 'table-cell';
    } else if (brandre.test(cell1.childNodes[0].title)) {
      // Treffer
      cell1.style.display = 'table-cell';
      cell2.style.display = 'table-cell';
    } else {
      // kein Treffer
      cell1.style.display = 'none';
      cell2.style.display = 'none';
    }
  }
}

// Tabelle zebra-mustern
function zebraTable(tbl) {
  var rows = tbl.rows;
  for (var i=0; i < rows.length; i++ ) {
    if (i % 2) {
      rows[i].className = 'odd';
    } else {
      rows[i].className = 'even';
    }
  }
}

