/**
 * @author Birgit King
 */
//jQuery Funktion: Warten bis DOM bereit ist

$(function(){
   var phshoppath = '/phshop/shop/';
   var http_request = false;
   var http_response = '';
   function doRequest(url, parameters) {
       http_request = false;
       if (window.XMLHttpRequest) {
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
          }
       } else if (window.ActiveXObject) { // IE
             try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
          } catch (e) {
             try {
                http_request = new ActiveXObject("Microsoft.XMLHTTP");
             } catch (e) {}
          }
       }
       if (!http_request) {
          alert('XMLHTTP-Instanz kann nicht erzeugt werden');
          return false;
       }
       http_request.onreadystatechange = alertInhalt;
       http_request.open('POST', url, true);
       http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
       http_request.send(parameters);
   };

   function alertInhalt() {
      if (http_request.readyState == 4) {
         if (http_request.status == 200) {
            http_response = http_request.responseText;
         } else  
         { alert('ERROR: Beim Request ist ein Problem aufgetreten.'); }
      }
   }

   function getSJAX(url,parameters) { 
      if (url.indexOf('?') > 0) {
         url += "&";
      }
      else {
         url += "?";
      }
      url += "cache=" + $.wwGetTimestamp();
      var response = $.ajax({
        "type": "GET",
        "url": url,
        "async": false
      }).responseText;
      return response;
    }

    
    $.nmAjaxSuche = function(suchBegriff){
        eval(getSJAX(phshoppath + 'factfinder.php?query=' + escape(suchBegriff)));
    };
    
    $.nmAjaxAddKatalogItem = function(formData){
        var targetForm = "ajaxKatalogAddItem";
        eval(getSJAX(phshoppath + 'cart.php?mode=adddirectitem&itemid=' + formData[0].value + '&quantity=' + formData[2].value + '&itemsize=' + formData[1].value));
        $.wwAjaxAddKatalogItemCB(addKatalogItem);
        $.wwWarenkorbTeaView(addKatalogItem.teaser);
        $.wwWarenkorbInfoView(addKatalogItem.wkbInfo);
        $.wwAjaxWarenkorbAddItemsCB(addKatalogItem.products);
        
    };
    
    $.nmAjaxDelKatalogItem = function(targetItem){
        var tempId = targetItem.substr(17);
        eval(getSJAX(phshoppath + 'cart.php?mode=deletecartitem&itemid=' + tempId));        
        var itemsToDel = {
            id: [tempId]
        };
        $.wwWarenkorbInfoView(wkbInfoContent.wkbInfo);
        $.wwAjaxDelKatalogItemCB(itemsToDel);
        $.wwAjaxDelWarenkorbItemCB(itemsToDel);
        
    };
    
    $.nmAjaxNewsletterAdd = function(formData){
        var targetForm = "ajaxAddNewsletter";
        for (i = 0; i < formData.length; i++) {
           // console.log("formData " + i + " : " + formData[i].name + " : " + formData[i].value);
        }
        if (formData.length == 6) {
           eval(getSJAX(phshoppath + 'newsletter.php?mode=add&datenschutz=' + formData[0].value + '&anrede=' + formData[1].value + '&titel=' + formData[2].value + '&vName=' + escape(formData[3].value) + '&nName=' + escape(formData[4].value) + '&eMail=' + formData[5].value));
        }
        else {
           eval(getSJAX(phshoppath + 'newsletter.php?mode=add&&anrede=' + formData[0].value + '&titel=' + formData[1].value + '&vName=' + escape(formData[2].value) + '&nName=' + escape(formData[3].value) + '&eMail=' + formData[4].value));
        }
    };
    
    
    $.nmAjaxNewsletterDel = function(formData){
        var targetForm = "ajaxDelNewsletter";
        eval(getSJAX(phshoppath + 'newsletter.php?mode=delete&eMail=' + formData[0].value));
    };
    
    
    $.nmAjaxNewsletterChange = function(formData){
        var targetForm = "ajaxChangeNewsletter";
        eval(getSJAX(phshoppath + 'newsletter.php?mode=change&eMailOld=' + formData[0].value + '&eMailNeu=' + formData[1].value)); 
    };
    
    $.nmGetKampagneFlashTeaser = function(){
        var flashTeaser = {
            teaser: [{
                fallback: "fallback_mission.jpg",
                kampId: "mission"
            }, {
                fallback: "fallback_business.jpg",
                kampId: "buisness"
            }, {
                fallback: "fallback_casual.jpg",
                kampId: "casual"
            }, {
                fallback: "fallback_outfits.jpg",
                kampId: "outfits"
            }]
        };
        return flashTeaser;
    };
    
    
    $.nmGetKampagne = function(id){
        eval(getSJAX(phshoppath + 'itemlist.php?page=start&id=' + id)); 
        return kampContent;
    };
    
    $.nmInitWkbInfo = function(){
        eval(getSJAX(phshoppath + 'cart.php?mode=shortinfo')); 
    };
    
    $.nmGetWarenkorbContent = function(){
        eval(getSJAX(phshoppath + 'cart.php?mode=info')); 
        return wkbContent;
    };
    
    $.nmAjaxDelWarenkorbItem = function(tempId){
        eval(getSJAX(phshoppath + 'cart.php?mode=deletecartitem&itemid=' + tempId)); 
        var itemsToDel = {
            id: [tempId]
        };
        
        $.wwWarenkorbInfoView(wkbInfoContent.wkbInfo);
        $.wwAjaxDelWarenkorbItemCB(itemsToDel);
        $.wwAjaxDelKatalogItemCB(itemsToDel);
    };
    
    $.nmChangeWarenkorbItem = function(selectId, selectBox, selectedValue){
        eval(getSJAX(phshoppath + 'cart.php?mode=changecartitem&olditemid=' + selectId + '&fieldname=' + selectBox + '&newvalue=' + selectedValue)); 
    };
    
    $.nmAjaxCashVoucher = function(formData){
        var targetForm = "ajaxCashVoucher";
        eval(getSJAX(phshoppath + 'cart.php?mode=addvoucher&gutschein=' + escape(formData[0].value))); 
    };
    
    $.nmAjaxSaveWkbToMkz = function(){
        eval(getSJAX(phshoppath + 'favourites.php?mode=addcart')); 
    };
    
    
    $.nmAjaxPrintWkb = function(){
        var target = "cart.php";
        $.wwOpenPDF(target);
    };
    
    
    $.nmAjaxInitCheckout = function(){
        eval(getSJAX(phshoppath + 'initcheckout.php')); 
    };
    
    $.nmGetProductFilter = function(preFilter){
        eval(getSJAX(phshoppath + 'navigation.php?mode=nav')); 
    };
    
    
    $.nmGetAllProducts = function(orderId){
        eval(getSJAX(phshoppath + 'navigation.php?mode=prod&sortmode=' + orderId)); 
        return prodContent;
    };
    
    
    $.nmGetOutfitProducts = function(outfitId){
        eval(getSJAX(phshoppath + 'outfit.php?mode=outfititems&outfitid=' + outfitId));
        $.wwShowProductOutf(prodContent, outfitId);
    };
    
    $.nmGetProdTeaser = function(){
        eval(getSJAX(phshoppath + 'teaser.php?mode=all')); 
        return prodTeaser;
    };
    
    
    $.nmGetProductdetails = function(id, menge, groesse, origin){
        eval(getSJAX(phshoppath + 'article.php?mode=show&id=' + id + '&origin=' + origin)); 
        return productDetails;
    };
    
    $.nmGetOutfitdetails = function(id, origin){
        var temp = getSJAX(phshoppath + 'outfit.php?mode=outfitoverview&outfitid=' + id + '&origin=' + origin);
        eval(temp); 
        return outfitDetails;
    };
    
    
    $.nmGetOutfitPrice = function(formData, id){
        var queryString = '';
        for (i = 0; i < formData.length; i++) {
            queryString += '&' + formData[i].name + '=' + formData[i].value;
        }
        eval(getSJAX(phshoppath + 'outfit.php?mode=outfitprice' + queryString));  
        return outfitPrice;
    };
    
    $.nmGetOutfits = function(){
        eval(getSJAX(phshoppath + 'outfit.php?mode=outfitsflash'));  
        return favContent;
    };
    
    
    $.nmGetOutfitProductdetails = function(id, size, outfitid){
        eval(getSJAX(phshoppath + 'outfit.php?mode=outfitproductdetails&outfitid=' + outfitid + '&id=' + id + '&itemsize=' + size)); 
        return outprodDetails;
    };
    
    
    $.nmGetMarkedetails = function(id){
        eval(getSJAX(phshoppath + 'teaser.php?mode=brand&id=' + id)); 
        return markeDetails;
    };
    
    $.nmGetP2Wkbdetails = function(id){
        eval(getSJAX(phshoppath + 'cart.php?mode=showitemtocart&id=' + id)); 
        return p2wkbDetails;
    };
    
    $.nmGetO2Wkbdetails = function(id){
        eval(getSJAX(phshoppath + 'outfit.php?mode=outfittocart&outfitid=' + id)); 
        return o2wkbDetails;
    };
    
    $.nmGetArtikelLieferstatus = function(farbe, groesse){
        eval(getSJAX(phshoppath + 'article.php?mode=changesize&id=' + farbe + '&itemsize=' + groesse + '&itemcolor=' + farbe)); 
        return lieferDetails;
    };
    
    $.nmGetOutfitLieferstatus = function(farbe, groesse){
        eval(getSJAX(phshoppath + 'outfit.php?mode=changesize&id=' + farbe + '&itemsize=' + groesse + '&itemcolor=' + farbe)); 
        return lieferDetails;
    };
    
    $.nmAjaxPrintArtikel = function(id){
        var target = "article.php?itemid="+id;
        $.wwOpenPDF(target);
    };
    
    $.nmAjaxPrintOutfit = function(id){
        var target = "outfit.php?outfitid="+id;
        $.wwOpenPDF(target);
    };
    
    $.nmStoreToFavourites = function(formData, id){
        eval(getSJAX(phshoppath + 'favourites.php?mode=add&id=' + id + '&' + formData[0].name + '=' + formData[0].value + '&' + formData[1].name + '=' + formData[1].value  + '&' + formData[2].name + '=' + formData[2].value)); 
        return product;
    };
    
    $.nmStoreToOFavourites = function(formData, id){
        var formstring = '';
        for (i = 0; i < formData.length; i++) {
            formstring += '&' + formData[i].name + '=' + formData[i].value;
        }
        eval(getSJAX(phshoppath + 'favourites.php?mode=addoutfit&id=' + id + formstring)); 
        return product;
    };
    
    $.nmAjaxAddProductItem = function(formData, orderId){
        var targetForm = "productselectorform";
        eval(getSJAX(phshoppath + 'cart.php?mode=addcartitem&itemid=' + formData[1].value + '&quantity=' + formData[0].value + '&itemsize=' + formData[2].value)); 
        $.wwWarenkorbTeaView(addKatalogItem.teaser);
        $.wwWarenkorbInfoView(addKatalogItem.wkbInfo);
        $.wwAjaxWarenkorbAddItemsCB(addKatalogItem.products);
        
    };
    
    $.nmAjaxAddOutfitItem = function(formData, orderId){
        var targetForm = "outfitproductsform";
        var queryString = '';
        for (i = 0; i < formData.length; i++) {
            queryString += '&' + formData[i].name + '=' + formData[i].value;
        }
        eval(getSJAX(phshoppath + 'cart.php?mode=addcartfigure' + queryString)); 
    };
    
    $.nmInitMkzInfo = function(){
        eval(getSJAX(phshoppath + 'favourites.php?mode=init')); 
    };
    
    $.nmGetAddFavProducts = function(){
        eval(getSJAX(phshoppath + 'favourites.php?mode=get')); 
        return favContent;
    };
    
    $.nmGetTempAddVisProduct = function(id){
        eval(getSJAX(phshoppath + 'singleitem.php?page=nopage&itemid=' + id)); 
        return product;
    };
    
    $.nmDelMkzItem = function(id){
        eval(getSJAX(phshoppath + 'favourites.php?mode=delete&id=' + id)); 
    };
    
    
    $.nmAddFavToWkb = function(){
        eval(getSJAX(phshoppath + 'cart.php?mode=addfavtocart')); 
        $.wwAjaxAddKatalogItemCB(addKatalogItem);
        $.wwWarenkorbTeaView(addKatalogItem.teaser);
        $.wwWarenkorbInfoView(addKatalogItem.wkbInfo);
        $.wwAjaxWarenkorbAddItemsCB(addKatalogItem.products);
        $.wwAddFavToWkbCb();
    };
    
    $.nmSaveMkzToFav = function(){
        $.wwGetSection("#tabFooMeinKontoFavorit");
        $.wwSaveMkzToFavCb();
        eval(getSJAX(phshoppath + 'favourites.php?mode=init')); 
    };
    
    $.nmAjaxGetOrderOverview = function(){
        eval(getSJAX(phshoppath + 'orderoverview.php')); 
        return target;
    };
    
    $.nmAjaxSendContactForm = function(formData, formName){
        var targetForm = formName;
        var contactString = '?mode=contact';
        for (i = 0; i < formData.length; i++) {
            contactString += "&" + formData[i].name + "=" + formData[i].value;
        }
        eval(getSJAX(phshoppath + 'contact.php' + contactString));  
    }; 
    
    $.nmAjaxPrintAgb = function(){
        var target = "agb.pdf";
        $.wwOpenPDF(target);
    };
    
    $.nmAjaxPrintDatenschutz = function(){
        var target = "datenschutz.pdf";
        $.wwOpenPDF(target);
    };
    
    
    $.nmGetKontoProducts = function(){
        eval(getSJAX(phshoppath + 'itemlist.php?id=meinkonto')); 
    };
    
    $.nmGetFavProducts = function(){
        eval(getSJAX(phshoppath + 'favourites.php?mode=get')); 
        return favContent;
    };
    
    
    $.nmDelFavItem = function(id){
        eval(getSJAX(phshoppath + 'favourites.php?mode=delete&id=' + id)); 
        $.wwDelFavItem(id);
    };
    
    $.nmInitSendArtikel = function(formData, id){
        var targetForm = "ajaxSendArtikel";
        eval(getSJAX(phshoppath + 'sendarticle.php?mode=article&id=' + id + '&empfehlenname=' + escape(formData[0].value) + '&empfehlensender=' + escape(formData[1].value) + '&empfehlenempfang=' + escape(formData[2].value) + '&empfehlentext=' + escape(formData[3].value))); 
    };

    $.nmInitSendOutfit = function(formData, id){
        var targetForm = "ajaxSendOutfit";
        eval(getSJAX(phshoppath + 'sendarticle.php?mode=outfit&id=' + id + '&empfehlenname=' + escape(formData[0].value) + '&empfehlensender=' + escape(formData[1].value) + '&empfehlenempfang=' + escape(formData[2].value) + '&empfehlentext=' + escape(formData[3].value))); 
    };
    
    $.nmInitSendWarenkorb = function(formData){
        var targetForm = "ajaxSendWkb";
        eval(getSJAX(phshoppath + 'sendcart.php?name=' + formData[0].value + '&emailsender=' + formData[1].value + '&emailfriend=' + formData[2].value + '&nachricht=' + escape(formData[3].value))); 
    };
    
    $.nmGetMerkFavProducts = function(){
        eval(getSJAX(phshoppath + 'favourites.php?mode=get')); 
        return favContent;
    };
    
    $.nmGetFavWkbProducts = function(){
        eval(getSJAX(phshoppath + 'favourites.php?mode=getsymbols')); 
    };
    
    $.nmAjaxNewsletterLayAdd = function(formData){
        var targetForm = "ajaxAddNewsletterLay";
        var addNewsletter = {
            anrede: "Herr",
            titel: "Dr.",
            vName: "Max",
            nName: "Testhans",
            eMail: "max.mustermann@web.de"
        };
        $.wwAjaxNewsletterAddLayCB(addNewsletter);
    };
    
    $.nmAjaxNewsletterLayDel = function(formData){
        var targetForm = "ajaxDelNewsletterLay";
        for (i = 0; i < formData.length; i++) {
            // $.wwDebug("formData " + i + " : " + formData[i].name + " : " + formData[i].value);
        }
        var delNewsletter = {
            eMail: "max.mustermann@web.de"
        };
        $.wwAjaxNewsletterDelLayCB(delNewsletter);
    };
    
    $.nmAjaxNewsletterLayChange = function(formData){
        var targetForm = "ajaxChangeNewsletterLay";
        for (i = 0; i < formData.length; i++) {
            // $.wwDebug("formData " + i + " : " + formData[i].name + " : " + formData[i].value);
        }
        var chaNewsletter = {
            eMail: "max.mustermann@web.de"
        };
        $.wwAjaxNewsletterChaLayCB(chaNewsletter);
    };
    
    $.nmAjaxOrderKatalogForm = function(formData){ 
        var targetForm = "ajaxOrderKatalog";
        var katalogString = '?mode=katalog';
        for (i = 0; i < formData.length; i++) {
            katalogString += "&" + formData[i].name + "=" + escape(formData[i].value);
        }
        var sendString = phshoppath + 'katalog.php' + katalogString;
        eval(getSJAX(sendString));  
    };

    $.nmAjaxVoteOutfit = function(formData){
        var targetForm = "ajaxVoteOutfit";
        var paramString = "?";
        for (i = 0; i < formData.length; i++) {
            paramString = paramString + formData[i].name + "=" + escape(formData[i].value) + "&"; 
            // console.log("formData " + i + " : " + formData[i].name + " : " + formData[i].value);
        }
        eval(getSJAX(phshoppath + 'outfitvote.php' + paramString + 'mode=vote'));
    };
    
    $.nmVoteOutfitGewinner = function(formData){
        var gewinner = [{
            datum: "",
            text: ""
        } ]
	return gewinner;
    };

    $.nmVoteOutfitTop3 = function(){
        eval(getSJAX(phshoppath + 'outfitvote.php?mode=top3'));
        return top3;
    };

    $.nmAjaxGewinnspielForm = function(formData){ 
        var targetForm = "ajaxGws";
        var paramString = "?";
        for (i = 0; i < formData.length; i++) {
            paramString = paramString + formData[i].name + "=" + escape(formData[i].value) + "&"; 
        }
        eval(getSJAX(phshoppath + 'competition.php' + paramString + 'mode=gaastra'));
    };


    $.nmLogout = function(){
        eval(getSJAX(phshoppath + 'user.php?mode=logout'));
        $.wwLogoutCB();
    };
    
    
    $.nmChangeUser = function(){
        eval(getSJAX(phshoppath + 'user.php?mode=change'));
    };

    $.nmLoadPhPContent = function(target, section){
        var result = '';
        if (target === 'checkout') {
           if (section === 'WkbCheckoutKundendaten') {
              $.post("lib/neueMedien/cartaddress.php?cache="+$.wwGetTimestamp(), null, function(data){ $('#tabWkbCheckoutKundendaten').html(data); }, "html");
           }
           if (section === 'WkbCheckoutVersenden') {
              $.post("lib/neueMedien/cartdelivery.php?cache="+$.wwGetTimestamp(), null, function(data){ $('#tabWkbCheckoutVersenden').html(data); }, "html");
           }
           if (section === 'WkbCheckoutZahlung') {
              $.post("lib/neueMedien/cartpay.php?cache="+$.wwGetTimestamp(), null, function(data){ $('#tabWkbCheckoutZahlung').html(data); }, "html");
           }
           if (section === 'WkbCheckoutLogin') {
              $.post("lib/neueMedien/login.php?cache="+$.wwGetTimestamp(), null, function(data){ $('#tabWkbCheckoutLogin').html(data); }, "html");
           }
           if (section === 'WkbCheckoutBezahlen') {
              $.post("lib/neueMedien/cartsum.php?cache="+$.wwGetTimestamp(), null, function(data){ $('#tabWkbCheckoutBezahlen').html(data); }, "html");
           }
           if (section === 'WkbCheckoutBestaetigung') {
              $.post("lib/neueMedien/cartconfirm.php?cache="+$.wwGetTimestamp(), null, function(data){ $('#tabWkbCheckoutBestaetigung').html(data); }, "html");
           }
        }
        if (target === 'meinKonto') {
           if (section === 'FooMeinKonto') {
              $.post("lib/neueMedien/kontologin.php?cache="+$.wwGetTimestamp(), null, function(data){ $('#tabFooMeinKontoLogin').html(data); }, "html");
           }
           if (section === 'FooMeinKontoLogin') {
              $.post("lib/neueMedien/kontologin.php?cache="+$.wwGetTimestamp(), null, function(data){ $('#tabFooMeinKontoLogin').html(data); }, "html");
           }
           if (section === 'FooMeinKontoStart') {
              $.post("lib/neueMedien/kontostart.php?cache="+$.wwGetTimestamp(), null, function(data){ $('#tabFooMeinKontoStart').html(data); }, "html");
           }
           if (section === 'FooMeinKontoPasswort') {
              $.post("lib/neueMedien/kontopasswort.php?cache="+$.wwGetTimestamp(), null, function(data){ $('#tabFooMeinKontoPasswort').html(data); }, "html");
           }
           if (section === 'FooMeinKontoDaten') {
              $.post("lib/neueMedien/kontodaten.php?cache="+$.wwGetTimestamp(), null, function(data){ $('#tabFooMeinKontoDaten').html(data); }, "html");
           }
           if (section === 'FooMeinKontoFavorit') {
              $.post("lib/neueMedien/kontofavorit.php?cache="+$.wwGetTimestamp(), null, function(data){ $('#tabFooMeinKontoFavorit').html(data); }, "html");
           }
           if (section === 'FooMeinKontoBestell') {
              $.post("lib/neueMedien/kontobestell.php?cache="+$.wwGetTimestamp(), null, function(data){ $('#tabFooMeinKontoBestell').html(data); }, "html");
           }
        }
    };
    
        $.nmExtraFunction = function(fctSection){
           eval(getSJAX(phshoppath + 'extrafunction.php?data=' + fctSection)); 
        };

        $.nmGetSeoUrl = function(id){
            eval(getSJAX(phshoppath + 'article.php?mode=seourl&seoid=' + id)); 
            return url;
        };

        $.nmWebanalyticsCust = function(){
            eval(getSJAX(phshoppath + 'webanalytics.php?mode=cust')); 
            return et_cust;
        };
        
        $.nmWebanalyticsTval = function(){
            eval(getSJAX(phshoppath + 'webanalytics.php?mode=value')); 
            return et_tval;
        };
        
        $.nmWebanalyticsBasket = function(){
            eval(getSJAX(phshoppath + 'webanalytics.php?mode=basket')); 
            return et_basket;
        };

       $.nmWebanalyticsId = function(){
           eval(getSJAX(phshoppath + 'webanalytics.php?mode=session'));
           return et_tonr;
       };

       $.nmOrderKatalogTracking = function() {
           eval(getSJAX(phshoppath + 'cart.php?mode=pixeltracking&pmk=ILIGCPC100913'));
           return pixel;
	};
});
