////////////////////////////////////////////////////////////////
//
// wScript.js 5.0.1
// erstellt durch Scholl Communications AG, 77694 Kehl, www.scholl.de
// erstellt mit Weblication Content Management Server, www.weblication.de
//
////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////
//
// Anzupassende Variablen:
//
////////////////////////////////////////////////////////////////

var mailPostfix = '@domain.dd';

////////////////////////////////////////////////////////////////
//
// Beschreibung: Browsererkennung
//
////////////////////////////////////////////////////////////////

var ns  = (document.layers) ? 1 : 0;
var ie  = (document.all) ? 1 : 0;
var dom = (document.getElementById) ? 1 : 0;
var mac = (navigator.platform.indexOf("Mac") != -1) ? 1 : 0;
var gecko     = (navigator.userAgent.indexOf("Gecko") != -1) ? 1 : 0;
var geckoVers = parseFloat(navigator.userAgent.replace(/.*rv:(\d+\.\d+).*/, '$1'));
var ieVers    = navigator.appVersion.substring(navigator.appVersion.lastIndexOf("MSIE") + 4,navigator.appVersion.lastIndexOf("MSIE") + 8);

////////////////////////////////////////////////////////////////
//
// Beschreibung: Oeffnet ein Popup-Fenster
//
////////////////////////////////////////////////////////////////

function openPopup(url){

 if(debugMode == 1){
  alert(url);
 }

 window.open(url, "popup", optionsPopup);
}

////////////////////////////////////////////////////////////////
//
// Beschreibung: Oeffnet ein Popup-Fenster vom Typ 1
//
////////////////////////////////////////////////////////////////

function openPopup1(url){

 if(debugMode == 1){
  alert(url);
 }

 window.open(url, "popup1", optionsPopup1);
}

////////////////////////////////////////////////////////////////
//
// Beschreibung: Oeffnet ein Popup-Fenster vom Typ 2
//
////////////////////////////////////////////////////////////////

function openPopup2(url){

 if(debugMode == 1){
  alert(url);
 }

 window.open(url, "popup2", optionsPopup2);
}


////////////////////////////////////////////////////////////////
//
// Beschreibung: Zeigt die Druckansicht an
//
////////////////////////////////////////////////////////////////

function wShowPrintpreview(){  

  var url = location.href;
  var anchor = location.hash;

  url = url.replace(anchor, '');
  
  if(url.indexOf('?') >= 0){
    url += '&viewmode=print';
  }
  else{
    url += '?viewmode=print';    
  }
  
  openWindow(url, 'wPrintpreview', 'width=768,height=520,scrollbars=yes');
}

/*********************************************************************************/
//
// �ffnet ein Fenster
//
// @param string Url
//
// @param string Name des Fensters
//
// @param string Optionen
//
// @return window			
//
/*********************************************************************************/

function openWindow(url, name, options){

  var regWidth = /width=(\d+)/;
  regWidth.exec(options);
  width = RegExp.$1; 
  if(width == ''){   
    width = 640; 
  }

  var regHeight = /height=(\d+)/;
  regHeight.exec(options);
  height = RegExp.$1;       
  if(height == ''){   
    height = 480; 
  }    


  if(!name && !width && !height && !options){
    return window.open(url, name);
    return;
  }
  //Zusaetzliche Optionen angeben
  if(!options){
    options = ',resizable=no,scrollbars=no,status=no';
  }
  //Position zentriert festlegen
  
  var posLeft = (screen.width / 2)  - (width  / 2);
  var posTop  = (screen.height / 2) - (height / 2);
  //alert('top='+posTop+',left='+posLeft+',width='+width+',height='+height+',' + options);<<<
  return window.open(url, name, 'top='+posTop+',left='+posLeft+',width='+width+',height='+height+',' + options);
}

////////////////////////////////////////////////////////////////
//
// Beschreibung: Druckt das aktuelle Dokument
//
////////////////////////////////////////////////////////////////

function printDocument(){  

  if(document.all && navigator.appVersion.substring(22,23)==4) {
    self.focus();
    var OLECMDID_PRINT = 6;
    var OLECMDEXECOPT_DONTPROMPTUSER = 2;
    var OLECMDEXECOPT_PROMPTUSER = 1;
    var WebBrowser = '<object id="WebBrowser1" width="0" height="0" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></object>';
    document.body.insertAdjacentHTML('beforeEnd',WebBrowser);
    WebBrowser1.ExecWB(OLECMDID_PRINT,OLECMDEXECOPT_DONTPROMPTUSER);
    WebBrowser1.outerHTML = '';
  }
  else{
    window.print();  
  }
}

/*********************************************************************************/
//
// @description Ruft eine URL auf
//
// @parameter   String Aufzurufende Url
//
// @parameter   Function Nach der Anfrage aufzurufende Funktion
//
// @return      void
//
/*********************************************************************************/

function getUrl(url, functionResult){

  var requestObject = new wRequestObject(url, functionResult);
}

/*********************************************************************************/
//
// @description Ruft eine URL auf
//
// @parameter   String Aufzurufende Url
//
// @parameter   Function Nach der Anfrage aufzurufende Funktion
//
// @return      void
//
/*********************************************************************************/

function wRequestObject(url, functionResult){

  if(typeof functionResult == 'function'){
    var id              = resultFunctions.length;
    //alert(id);

    this.request        = null;

    if(document.all){
      this.request = new ActiveXObject("Microsoft.XMLHTTP");
    }
    else{
      this.request = new XMLHttpRequest();
    }

    resultFunctions.push(functionResult);
    //alert('push' +  requests.length);

    requests.push(this.request);
    this.request.open('GET', url, true);

    this.request.onreadystatechange = function(){
      var requestObject = requests[id];
      if(requestObject.readyState == 4){
        if(requestObject.status == '200'){
          resultFunctions[id](requestObject.responseText);
        }
      }
    }

    this.request.send('');
  }
}

/***************************************************
* @info  : Oeffnet eine URL in einem popUp         *
* @param : url   : Zu oeffnende URL                *
*          width : Breite des Fensters             *
*          height: Hoehe des Fensters              *
* @return: -                                       *
***************************************************/

function wOpenPopupURL(url, width, height){
  var name = '';
  
  if(width == '' || width == ' '){
    width = 786;
  }
  if(height == '' || height == ' '){
    height = 677;
  }
  url = url.replace(/&amp;/g, '&');
  options = ',location=no, menubar=no,toolbar=no,resizable=no,scrollbars=no,status=no';
  width   = parseInt(width);
  height  = parseInt(height);
  //Position zentriert festlegen
  var posLeft = (screen.width / 2)  - (width  / 2);
  var posTop  = (screen.height / 2) - (height / 2);
  window.open(url, name, 'top='+posTop+',left='+posLeft+',width='+width+',height='+height+',' + options);
}


function wOpenPopupVideo(src, width, height){
  var name = '';

  if(width == '' || width == ' '){
    width = 786;
  }
  if(height == '' || height == ' '){
    height = 677;
  }
  var src       = src.replace(/&amp;/g, '&');
  var srcFrame  = '/ecomax_de/wGlobal/content/areas/popup.area.php';
  var url       = srcFrame+'?vid='+src;
  
  //alert (url);
  options = ',location=no, menubar=no,toolbar=no,resizable=no,scrollbars=no,status=no';
  width   = parseInt(width);
  height  = parseInt(height);
  //Position zentriert festlegen
  var posLeft = (screen.width / 2)  - (width  / 2);
  var posTop  = (screen.height / 2) - (height / 2);
  window.open(url, name, 'top='+posTop+',left='+posLeft+',width='+width+',height='+height+',' + options);
}

/***************************************************
* @info  : Oeffnet ein Bild in einem popUp         *
* @param : url   : Zu oeffnende URL                *
* @return: -                                       *
***************************************************/

function wOpenImageAdaptSize(url){

  var name = '';
  var path = '/weblication/grid/scripts/wImage.php?action=getImageSize&path='+url;
  curImageUrl = url;
  getUrl(path, wOpenImageAdaptSizeResponse);
}

function wOpenImageAdaptSizeResponse(response){
  
  var name = '';
  var size = response;
  if(response == ''){
    size = 'width="800" height="600"';
  }
  
  var regex = /(?:")(\d+?)(?:").*(?:")(\d+?)(?:")/;
  var match = size.match(regex);d 
  
  if(match){
    width   = match[1];
    height  = match[2]; 
  }
  else{
    width   = 800;
    height  = 600;
  }
  
  curImageUrl = curImageUrl.replace(/&amp;/g, '&');
  options = ',location=no, menubar=no,toolbar=no,resizable=no,scrollbars=no,status=no';
  width   = parseInt(width);
  height  = parseInt(height);
  //Position zentriert festlegen
  var posLeft = (screen.width / 2)  - (width  / 2);
  var posTop  = (screen.height / 2) - (height / 2);
  window.open(curImageUrl, name, 'top='+posTop+',left='+posLeft+',width='+width+',height='+height+',' + options);
}

////////////////////////////////////////////////////////////////
//
// Beschreibung: Generiert Spam-sichere Email
//
////////////////////////////////////////////////////////////////

function wWriteMail(name){
	//location.href = 'mailto:' + name + '@scholl.de';
  location.href = 'mailto:' + name + mailPostfix;
}

////////////////////////////////////////////////////////////////
//
// Beschreibung: Druckt das aktuelle Dokument
//
////////////////////////////////////////////////////////////////

function wPrintDocument(){

  if(document.all && navigator.appVersion.substring(22,23)==4) {
    self.focus();
    var OLECMDID_PRINT = 6;
    var OLECMDEXECOPT_DONTPROMPTUSER = 2;
    var OLECMDEXECOPT_PROMPTUSER = 1;
    var WebBrowser = '<object id="WebBrowser1" width="0" height="0" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></object>';
    document.body.insertAdjacentHTML('beforeEnd',WebBrowser);
    WebBrowser1.ExecWB(OLECMDID_PRINT,OLECMDEXECOPT_DONTPROMPTUSER);
    WebBrowser1.outerHTML = '';
  }
  else{
    window.print();  
  }
}

////////////////////////////////////////////////////////////////
//
// Beschreibung: Generiert Spam-sichere Email
//
////////////////////////////////////////////////////////////////

function wSendMailNospam(name){

  location.href = 'mailto:' + name + mailPostfix;
}

////////////////////////////////////////////////////////////////
//
// Beschreibung: Setzt die Sprachversion
//
////////////////////////////////////////////////////////////////

function wSetLanguageVersion(langVersion, redirectUrl){
  //var url = '/weblication/grid/scripts/wSystem.php?action=setLanguageVersion&redirectUrl=' + escape(redirectUrl) + '&langVersion=' + langVersion;
  var url = '/weblication/grid/scripts/wSystem.php?action=setLanguageVersion&redirectUrl=' + decodeURI(redirectUrl) + '&langVersion=' + langVersion;
  location.href = url;
}

function languageSelector(id) {
	if(document.getElementById(id)) {
		if(document.getElementById(id).style.display == 'none' || document.getElementById(id).style.display == '') {
			document.getElementById(id).style.display = 'block';
		} else {
			document.getElementById(id).style.display = 'none';
		}
	}
}

function addBasketDB(prodNr, beschreibung, preis){
  var url = '/ecomax_de/wGlobal/scripts/custom/ajax.php';
  var parameters = 'action=addBasketDB&prodNr=' + prodNr + '&beschreibung=' + beschreibung + '&preis=' + preis;
  wGetUrlAjaxPost(url, parameters, addBasketDBResponse);
};

function addBasketDBResponse(responseText){
  addBasket(responseText);
}


// Prüfen ob Workflow gestartet werden muss, oder Artikel direkt in WK
// Bedingungen - Eingeloggt
//             - Kundentyp bereits definiert
function addBasket(pathArticle){ 
  var url = '/ecomax_de/wGlobal/scripts/custom/ajax.php';
  var parameters = 'action=checkWorflow&pathArticle=' + pathArticle;
  wGetUrlAjaxPost(url, parameters, addBasketResponse, pathArticle);
};

// Prüfung ob erster Artikel im WK
function addBasketResponse(responseText, pathArticle){
  if(responseText != 1){
    // Workflow starten
      $('#statusAddBasket').dialog('open');
      // Setzten der Session Variable Kunden-Typ bei Klick auf entsp. Button
      $('input[name = "customerType"]').click(function(){
        var customerType = $(this).val();
        if(customerType ==''){
          customerType = 'dealer';
        }
        // Kunden-Typ Session-Variable setzen
        var url = '/ecomax_de/wGlobal/scripts/custom/ajax.php';
        var parameters = 'action=setCustomerType&customerType=' + customerType;
        wGetUrlAjaxPost(url, parameters, customerWorkflow, pathArticle);
      });
    
  }
  else{
    // bereits Artikel im WK -> Artikel dem WK hinzufügen
    addArticleToBasket(pathArticle);
  }
}

// Artikel in WK legen
function addArticleToBasket(pathArticle){
  var url = '/ecomax_de/wShop/wScripts/index.php';
  var parameters = 'action=wAddArticle&interfaces=wMyBasket&pathArticle=' + pathArticle + '&amount=1&operation=add';
  wGetUrlAjaxPost(url, parameters, addArticleResponse);
}

// Status "Artikel in Wk legen"
function addArticleResponse(responseText){
  var msg = '';
  responseText = responseText.replace(/^\s+/g, '');
  var responseText = responseText.split("|");
  /* Anzeige der StatusBox nur, wenn Fehlermeldung */
  if(responseText[0] != '1'){
    alert("Der Artikel konnte nicht in den Warenkorb gelegt werden.");
  }
  else{
    location.reload();
  }
}

// Fallunterscheidung je nach gewähltem Kundentyp
function customerWorkflow(customerType, pathArticle){
  // Fall A: Endkunde
  if(customerType == 'endkunde'){
    $('#statusAddBasket').dialog("close");
    addArticleToBasket(pathArticle);
  }
  // Fall B: registrierter Händler
  else if(customerType == 'dealerReg'){
    // Artikel zwischenspeichern
    var url = '/ecomax_de/wGlobal/scripts/custom/ajax.php';
    var parameters = 'action=setBasketTemp&pathArticle=' + pathArticle;
    wGetUrlAjaxPost(url, parameters, basketTemp);
  }
  //Fall C: nicht registrierter Händler
  else{
      
  }
}

function basketTemp(responseText){};


// Dialog-Box für Shop-Workflow
$(function(){
  $('#statusAddBasket').dialog({
    bgiframe: true,
    autoOpen: false,
    height: 350,
    width: 500,
    resizable:false,
    draggable:false,
    modal: true
  });
  
});


function toggleFachhaendler(id){
  jQuery('#'+id).toggle('slow');
}


jQuery(document).ready(function(){
  jQuery(".articleDetail:first").css("display", "block");
  
  jQuery(".toggle").click(function() {  
    jQuery(".buttonSmallA").addClass("buttonSmall");
    jQuery(".buttonSmallA").removeClass("buttonSmallA");

    jQuery(this).addClass("buttonSmallA")
    var id = jQuery(this).attr("id").substr(4);
    jQuery(".articleDetail").css("display", "none");
    jQuery("#"+id).css("display", "block");
    return false;
  });
  
  jQuery('#findenErsatzteile').click(function(event){
    event.preventDefault();
    if($('#searchFormErsatzteile input[name = "articleNo"]').val().length < 4){
      $('#statusErsatzteile').show();
    }
    else{
      var search = $('#searchFormErsatzteile input[name = "articleNo"]').val();
      search = search.replace(/\s/g, '');
      $('#searchFormErsatzteile input[name = "articleNo"]').val(search.substr(0,9));
      jQuery('#searchFormErsatzteile').submit();
    }
  });
  
  jQuery('.hinweisTooltip').tooltip({ 
    track: true, 
    delay: 0, 
    showURL: false,
    fade: 250,
    bodyHandler: function() { 
      return jQuery('#hinweisText').html(); 
    } 
  });
  
  $('.navLevel2').hover(
    function(){
      $(this).addClass('navLevel2Selected');
    },
    function(){
      $(this).removeClass('navLevel2Selected');
    }
  )
  
  // Tabellenzeilen abwechselnd färben
  $("table.articleData tr:even").removeClass();
  $("table.articleData tr:even").addClass("bgColor1");
  $("table.articleData tr:odd").addClass("bgColor2");

  // Preis dyn. laden
  if($("#price").length > 0){
    getPrice();
  };
  
  // Shop-Workflow-Box
  $('input[name = "customerType"]').click(function(){
    if($(this).val() == 'dealerReg'){
      $('#loginCustomerType').show("fast");
    }
    else if($(this).val() == 'dealer'){
      $('#statusAddBasket').dialog('close');
      window.location.href = '/ecomax_de/wRegister/index.php';
    }
    else{
      $('#loginCustomerType').hide("fast");
    }
  });
  
  // Fancybox
  $("a[class = 'lightbox']").fancybox({
    'hideOnContentClick': true
   }); 
  
  $("#print").click(function() {
    wShowPrintpreview();
    return false;
  });
  
  
  
  jQuery("#fachhaendlerSubmit").click(function() {  
    var land = jQuery("#fachhaendlersucheForm select[name = 'filterLand']").val();
    var plz = jQuery("#fachhaendlersucheForm input[name = 'filterPlz']").val();
    if(!land){
      jQuery("#messageFachhaendler").show();
    }
    else{
      if(isNaN(plz)){
        jQuery("#fachhaendlersucheForm input[name = 'filterPlz']").val('');
      }
      jQuery('#fachhaendlersucheForm').submit();
    }
    
  });
  jQuery("#fachhaendlersucheForm input").click(function() {
    jQuery(this).val('');
  });
  
  
  $("#zubehoerCat").change(function () {
    var param = $("#zubehoerCat option:selected").val();
      location.href = '?filterCatKoerbe='+param;
  });
  
});







