// JScript-Datei: Artikelvergleich.js
// Autor: Marc Bockstette
// Datum: 02.03.2007
// Beschreibung: Javascript Funktionen fuer den Artikelvergleich

// Global das Rueckgabeobjekt definieren
var ajax_request = null;
var gestartet = false;

function GetAjaxRequest() {
  // Erzeugt ein neues XMLHttpRequest - Objekt
  // fuer den Datenaustauch mit AJAX
  ajax_request = null; 
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
    ajax_request = new XMLHttpRequest();
    if (ajax_request.overrideMimeType) {
      ajax_request.overrideMimeType('text/xml');
    }
  }
  else if (window.ActiveXObject) { // IE
    try {
      ajax_request = new ActiveXObject("Msxml2.XMLHTTP");
    } 
    catch (e) {
      try {
        ajax_request = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (e) {}
    }
  }
  if (!ajax_request) {
    // alert('Fehler: Ihr Browser unterstuetzt kein AJAX!');
    return false;
  }    
}

function starte_artikelvergleich(sid) {
  // 
  var url = "/shop/Artikelvergleich.aspx?sid=" + String(sid);
  var artikel_id = 0;
  var arrVgl = document.getElementsByName("vgl");
  for (var i=0; i<arrVgl.length; ++i) {
    if (arrVgl[i].checked == true) {
      artikel_id = arrVgl[i].value;
      url = url + "&artikel_id=" + String(artikel_id);
      // Eine Zufallszahl an die Url haengen, um keine gecachte Seite zu bekommen
      var z = new Date().getTime();
      url = url + "&nocache=" + Math.round(z / 10);
    }
  }
  // Oeffnet ein neues Fenster, in dem ausgewaehlte Artikel verglichen werden  
  fenster_vgl = window.open(url, "Artikelvergleich", "location=no, menubar=no, resizable=yes, scrollbars=yes, status=no, toolbar=no");
  // .. und setzt den Fokus auf das Fenster
  fenster_vgl.focus();
}

function artvgl_start() {
  // Macht alle Checkboxen des Artikelvergleichs sichtbar
  // Das stellt sicher, dass der Clinet JavaScript aktiviert hat
  document.getElementById("artvgl_header").style.display = "block";
  // document.getElementById("artvgl_header").style.backgroundColor = "#0010CC";
  for (var i = 0; i < document.getElementsByName("vgl_artikel_id").length; i++) {
    document.getElementsByName("vgl_artikel_id")[i].style.visibility = "visible";
    //document.getElementsByName("artvgl")[i].parentNode.style.backgroundColor = "#D4D79C";
  }
}


function artvgl_checked(checkbox_id, sid, artikel_id, ob_gruppe_id) {
  //
  // Diese Funktion wird aufgerufen, wenn ein Artikel fuer den Vergleich gechekt wird
  if (sid == '') {
    // Es gibt noch keine Session
    if ( gestartet != true ) {
      gestartet = true;
      var artikelliste_aktion = document.getElementById("artikelliste_aktion");
      artikelliste_aktion.value = "vergleich";
      var artikelliste_form = document.getElementById("artikelliste_form");
      artikelliste_form.submit();
    }
  }
  else {
    // Es bereits eine Session
    // Ueberprueft, ob eine Checkbox einen Haken hat oder nicht und 
    GetAjaxRequest();
    var url = '/shop/ArtikelvergleichAJAX.aspx?sid=' + sid + '&ob_gruppe_id=' + ob_gruppe_id;
    if (document.getElementById(checkbox_id).checked == true) {
      url = url + "&aktion=add";
    }
    else {
      url = url + "&aktion=delete";
    }
    url =url + '&artikel_id=' + artikel_id;
    // Eine Zufallszahl an die Url haengen, um keine gecachte Seite zu bekommen
    var z = new Date().getTime();
    url = url + "&nocache=" + Math.round(z / 10);

    ajax_request.onreadystatechange = showArtvgl;
    // true fuer asynchrone Kommunikation
    ajax_request.open('GET', url, true);
    ajax_request.send(null);
  }}


function artvgl_getartikel(sid, ob_gruppe_id) {
  GetAjaxRequest();
  var url = '/shop/ArtikelvergleichAJAX.aspx?sid=' + sid + '&ob_gruppe_id=' + ob_gruppe_id;
    // Eine Zufallszahl an die Url haengen, um keine gecachte Seite zu bekommen
    var z = new Date().getTime();
    url = url + "&nocache=" + Math.round(z / 10);
    ajax_request.onreadystatechange = showArtvgl;
    // true fuer asynchrone Kommunikation
    ajax_request.open('GET', url, true);
    ajax_request.send(null);
}

function showArtvgl() {
  if (ajax_request.readyState == 4) {
    // readerState 4 -> Vollstaendig geladen
    //alert("readerState 4");
    if (ajax_request.status == 200) {
      // Der vom Server uebermittelte HTTP-Status ist OK
      //alert("ajax_request.status == 200");
      var text = ajax_request.responseText;
      //alert(text);
      var div_artikelvergleich_inhalt = document.getElementById("id_artikelvergleich_inhalt");
      if (div_artikelvergleich_inhalt != null) {
        div_artikelvergleich_inhalt.innerHTML = text;
      }
      // Das ganze Element anzeigen
      var div_artikelvergleich = document.getElementById("id_artikelvergleich");
      if (div_artikelvergleich != null) {
        div_artikelvergleich.style.display = 'block';
      }
    }
  }
}
