function exSuManager(){this.MAXOPENDBLOCKS=6;this.FILTEROPTIONPREFIX="filter_";this.FILTERSTATEPREFIX="fs_";this.PARAMETERKEY_EXPANDED=this.FILTERSTATEPREFIX+"expanded";this.PARAMETERKEY_OPENER=this.FILTERSTATEPREFIX+"open";this.PARAMETERKEY_PRICE="B$PPPRC";this.PARAMETERKEY_PRICEREDUCED="R$reduzierteArtikel";this.VALUEDELIMITER="@";this._PRICEFILTER_VONKEY="von";this._PRICEFILTER_BISKEY="bis";this._DELIMITER_PRICESLIDER="|";this._NOFILTERPRODUCTCOUNT=-1;this._NEDSTATMAXCOUNT=1;this._nedStatCount=0;var d="";var c;var b=null;var a=null;this._loadMetaData=function(f,e,j,k){var g=new requestObjectFactory();var h=g.getInstance("FilterElementeServiceRequest");h.kid=f;if(e){h.filter=e}if(j){h.expanded=j}if(k){h.reduzierteArtikel=k[this.PARAMETERKEY_PRICEREDUCED];h.minPreisFilter=k[this._PRICEFILTER_VONKEY];h.maxPreisFilter=k[this._PRICEFILTER_BISKEY]}FilterElementeService.getFilter(h,{callback:exsu._loadMetaData_cb,errorHandler:function(m,l){exsu._loadMetaData_cb(null,l)}})};this._loadMetaData_cb=function(g,l){if(g&&!l){var k=0;g.entries.each(function(n,o,m){n.entries.each(function(q,r,p){k++})});if(k>0){exsu._renderExpertenSuche(g);if(a&&b){var j=$(b);var h=$(a);var f={offset:{x:0,y:-72},duration:10};new Fx.Scroll(h,f).toElement(j)}}else{exsu._renderExpertenSuche(g);var e=$("expertenSuche");if(e){e.empty();exsu._setKeyVisualProductCount(exsu._NOFILTERPRODUCTCOUNT)}}}else{if(l){}}};this._disposeLeerFilterDialog=function(){dm.closeDialog();var g=$("paneContent");if(g){var f=g.getElement(".category_header_base");if(f){var e=g.getElements("div.leerFilter");if(e){e.each(function(j,k,h){j.dispose()})}}}};this._renderExpertenSuche=function(g){var k=$("paneNavi");if(k){var f=k.getElement("#expertenSuche");if(f==null){f=html.DIV({id:"expertenSuche"});k.grab(f)}else{f.empty()}if(!gf_isSports()){f.grab(exsu._getResetter(g.KID))}else{var j=$("auswahlAufheben");if(!j){var h=html.DIV({"class":"resetter"});var e=html.SPAN({"class":"title",text:"Ergebnisse filtern"});h.adopt(e);f.grab(h);k.grab(exsu._getResetterSports(g.KID))}}exsu._renderBlockList(g,f);exsu._uebernehmeMarkierteFilter(g,f);k.grab(f)}};this._uebernehmeMarkierteFilter=function(h,e){var k=h.filter;var g=false;if(k){for(var f in k){if(k.hasOwnProperty(f)){var j=k[f];if(j&&j.each){j.each(function(n,p,m){var l="#"+f+".blockList .entry input";var o=e.getElements(l);o.each(function(r,s,q){if(r&&r.get("value")==encodeURIComponent(n)){exsu._setCheckBoxChecked(r,true);g=true}if((r.id.indexOf("F_FARBSUCHE")==0)&&(r.checked)){$(r.id+"_color").removeClass("borderUnchecked");$(r.id+"_color").addClass("borderChecked")}})})}}}}if(g){exsu._setKeyVisualProductCount(h.productCount)}else{exsu._setKeyVisualProductCount(exsu._NOFILTERPRODUCTCOUNT)}};this._renderBlockList=function(g,e){var f=0;g.entries.each(function(j,l,h){var k=exsu._renderBlock(j,e,g,f);if(k){++f}})};this._renderBlock=function(q,v,g,k){if(q&&q.type=="PPPRC"){exsu._renderPriceBlock(q,v,g);return false}if(q&&q.entries&&q.entries.length<=0){return false}var n="exSuBlock";var e;if(k<exsu.MAXOPENDBLOCKS){e=exsu._getCloser(q)}else{var t=false;var u=g.filter;if(u){var s=u[q.type];if(typeof(s)!="undefined"){t=true}}var x=exsu._getOpenerFromHashInUrl();var j=encodeURIComponent(q.title);var f=(x.indexOf(j)>-1);if(t||f){e=exsu._getCloser(q)}else{n=n+" exSuBlockClosed";e=exsu._getOpener(q)}}var m=html.DIV({"class":n,id:encodeURIComponent(q.title)});var o=html.DIV({"class":"titleBorder"});var r=html.DIV({"class":"title"});var w=html.SPAN({"class":"titleText",text:q.title,style:"white-space: nowrap; "});r.grab(w);r.grab(e);var h=html.UL({"class":"blockList",id:q.type});if(q&&q.type=="F_FARBSUCHE"){exsu._renderColorEntries(q.entries,h,q.type,g.KID)}else{exsu._renderEntries(q.entries,h,q.type,g.KID)}m.adopt(o.grab(r),h);if(q.type!="F_FARBSUCHE"){if(q.expandable){if(exsu._isBlockExpanded(g,m)){var l=exsu._getReducer(g.KID,h.get("id"));m.grab(l)}else{var p=exsu._getExpander(g.KID,h.get("id"));m.grab(p)}}}v.grab(m);return true};this._renderPriceBlock=function(l,g,n){if(l){var m="priceFilter";var k=html.DIV({"class":"exSuBlock",id:m});var h=html.DIV({"class":"titleBorder"});var e=html.DIV({text:"Preis","class":"title"});var f=exsu._getPriceSliderFilterDom(n,m);var j=exsu._getPriceReducedFilterDom(n.KID,n.reduzierteArtikel,m);k.adopt(h.grab(e),f,j);g.grab(k)}};this._getPriceReducedFilterDom=function(f,l,k){var m="reduzierteArtikel";var j=html.DIV({"class":"reduziert"});var g=html.INPUT({type:"checkbox",id:m,name:m,"class":"filterBox",value:"reduzierteArtikel"});exsu._setCheckBoxChecked(g,l);g.addEvent("click",function(n){exsu._filterChanged(f,k);return false});var e="Reduzierte Artikel";var h=html.LABEL({text:e,"for":m,"class":"filterBoxLabel clickable"});j.adopt(g,h);return j};this._getPriceSliderFilterDom=function(r,g){var k=html.DIV({"class":"slider"});if(r.minPreisFilter==null){r.minPreisFilter=""}if(r.maxPreisFilter==null){r.maxPreisFilter=""}var q=html.INPUT({type:"text","class":"von",value:r.minPreisFilter,maxlength:8});var o=html.DIV({text:"bis","class":"bbis"});var l=html.INPUT({type:"text","class":"bis",value:r.maxPreisFilter,maxlength:8});var h=html.DIV({"class":"priceInputs"}).adopt(q,o,l);var e=html.DIV({"class":"priceTitle"});var j=html.DIV({text:r.minPreis.toFixed(2).replace(".",",")+" EUR","class":"von"});var p=html.DIV({text:"bis","class":"bbis"});var n=html.DIV({text:r.maxPreis.toFixed(2).replace(".",",")+" EUR","class":"bis"});e.adopt(j,p,n);var m=html.DIV({text:"Preis filtern","class":"nachPriceLink underline"});if(navigator&&navigator.userAgent){var f=navigator.userAgent.match(/iPad/i)!=null;if(f){q.set("style","width:65px");o.set("style","padding-top:2px");l.set("style","width:65px");m.set("style","margin-top:5px")}}m.addEvent("click",function(s){exsu._filterChanged(r.KID,g);return false});q.addEvent("keypress",function(s){return exsu._allowOnlyDigits(s)});l.addEvent("keypress",function(s){clearTimeout(c);return exsu._allowOnlyDigits(s)});k.adopt(e,h,m);return k};this._allowOnlyDigits=function(g){var e=false;var f=g.code;if(f<=31||(f>=48&&f<=57)){e=true}else{g.stopPropagation();g.stop()}return e};this._getExpander=function(f,g){var k=html.A({"class":"limiter expander"});var j=html.DIV({text:"Alle anzeigen",style:"float:left"});var h=html.DIV({"class":"pfeil"});var e=html.DIV({style:"clear:both"});k.adopt(j,h,e);k.addEvent("click",function(){exsu._getReducer(f,g).replaces(this);exsu._setExpanderToHashInUrl(g);return false});return k};this._getReducer=function(f,g){var k=html.A({"class":"limiter reducer"});var j=html.DIV({text:"Weniger anzeigen",style:"float:left"});var h=html.DIV({"class":"pfeil"});var e=html.DIV({style:"clear:both"});k.adopt(j,h,e);k.addEvent("click",function(){exsu._getExpander(f,g).replaces(this);exsu._setExpanderToHashInUrl(g);return false});return k};this._isBlockExpanded=function(g,f){var e=g.expanded;if(e&&f){return e.contains(f.getElement(".blockList").get("id"))}return false};this._renderEntries=function(f,h,e,g){f.each(function(l,q,m){var p=html.LI({"class":"entry"});var k=encodeURIComponent(l.anzeigeText);var o=e+k;var n=html.INPUT({type:"checkbox",id:o,name:o,"class":"filterBox",value:k});n.addEvent("click",function(){exsu._filterChanged(g,h.get("id"));b=o;a=h.get("id");return false});var j=l.anzeigeText+" ("+l.count+")";p.adopt(n,html.LABEL({text:j,"for":o,"class":"filterBoxLabel"}));h.grab(p)})};this._renderColorEntries=function(f,h,e,g){f.each(function(r,s,t){var E="schwarze%wei%beige%graue%gelbe%gr%blaue%braune%lila%rosa%rote%orange%t%goldene%silberne%mehrfarbig%messing%transparent%pinke";var I=html.LI({"class":"entry"});var k=encodeURIComponent(r.anzeigeText);var j=e+k;var G=true;var K=true;var o=true;var n=true;var N=true;var H=true;var L=true;var q=true;var M=true;var z=true;var w=true;var y=true;var A=true;var v=true;var x=true;var p=true;var m=true;var C=k.split("%");if(C[0]=="wei"&&C[4]!="C3"){G=false}if(C[0]=="schwarze"&&C[2]!="C3"){K=false}if(C[0]=="beige"&&C[2]!="C3"){o=false}if(C[0]=="graue"&&C[2]!="C3"){n=false}if(C[0]=="gelbe"&&C[2]!="C3"){N=false}if(C[0]=="gr"&&C[4]!="C3"){H=false}if(C[0]=="blaue"&&C[2]!="C3"){L=false}if(C[0]=="braune"&&C[2]!="C3"){q=false}if(C[0]=="lila"&&C[2]!="C3"){M=false}if(C[0]=="rosa"&&C[2]!="C3"){z=false}if(C[0]=="rote"&&C[2]!="C3"){w=false}if(C[0]=="orange"&&C[2]!="C3"){y=false}if(C[0]=="t"&&C[4]!="C3"){A=false}if(C[0]=="goldene"&&C[2]!="C3"){v=false}if(C[0]=="silberne"&&C[2]!="C3"){x=false}if(C[0]=="mehrfarbige"&&C[2]!="C3"){p=false}if(C[0]=="pinke"&&C[2]!="C3"){m=false}var u=E.split("%");var J=u.length;var D=false;for(i=0;i<J;i++){if(u[i]==C[0]){D=true}}if(D&&G&&K&&o&&n&&N&&H&&L&&q&&M&&z&&w&&y&&A&&v&&x&&p&&m){var l=html.DIV({id:j+"_color",name:j,"class":C[0]+" borderUnchecked"});var B=html.INPUT({type:"checkbox",id:j,name:j,"class":"filterBoxHidden",value:k});B.addEvent("click",function(){exsu._filterChanged(g,h.get("id"));b=j;a=h.get("id");return false});l.addEvent("click",function(){B.checked=!B.checked;exsu._filterChanged(g,h.get("id"));b=j;a=h.get("id");if(B.checked){l.addClass("border")}return false});var F=r.anzeigeText+" ("+r.count+")";I.adopt(B,l);h.grab(I)}})};this._getCloser=function(e){var f=html.DIV({text:"-","class":"closer"});f.addEvent("click",function(){var g=encodeURIComponent(e.title);if($(g)){$(g).addClass("exSuBlockClosed");exsu._getOpener(e).replaces($(g).getElement(".closer"));exsu._removeOpenerFromHashInUrl(g)}return false});return f};this._getOpener=function(f){var e=html.DIV({text:"+","class":"closer"});e.addEvent("click",function(){var g=encodeURIComponent(f.title);if($(g)){$(g).removeClass("exSuBlockClosed");exsu._getCloser(f).replaces($(g).getElement(".closer"));exsu._addOpenerToHashInUrl(g)}return false});return e};this._getResetter=function(e){var h=html.DIV({"class":"resetter"});var g=html.SPAN({"class":"title",text:"Ergebnisse filtern"});var f=html.DIV({"class":"resetButton",text:"Auswahl aufheben"});f.grab(html.IMG({src:"/pics/11/resetIcon.jpg","class":"resetIcon"}));f.addEvent("click",function(){exsu._auswahlAufheben();return false});h.adopt(g,f);return h};this._getResetterSports=function(e){domAuswahlAufheben=html.DIV({id:"auswahlAufheben"});var f=html.DIV({"class":"resetButton",text:"ALLE FILTER AUFHEBEN"});f.addEvent("click",function(){exsu._auswahlAufheben();return false});domAuswahlAufheben.adopt(f);return domAuswahlAufheben};this._auswahlAufheben=function(){var f=$("expertenSuche");if(f){var e=f.getElements("input[type=checkbox]");e.each(function(g,j,h){exsu._setCheckBoxChecked(g,false);exsu._setKeyVisualProductCount(exsu._NOFILTERPRODUCTCOUNT)});plm.removeParameterFromHashWithPrefix(new Array(exsu.FILTEROPTIONPREFIX,"searchCategoryID","pageCount"))}return false};this._filterChanged=function(e,j){if(e&&j){var h=gf_getHashFromURL();if(h!=d||(h==""&&d=="")){exsu._showAjaxLoad(j)}var f=exsu._getFilterParams(e);f.combine(exsu._getPriceFilter(e));if(f.length>0){f.push("searchCategoryID="+e)}f.push("pageCount=1");var g=exsu._getExpanderHashParamFromDom();f.push(g);plm.addParameterToHash(null,null,f);if(exsu._nedStatCount<exsu._NEDSTATMAXCOUNT){exsu._nedStatCount=exsu._nedStatCount+1;st_messung.setZaehlername("Suche.Filtersuche.K"+e+"."+j.replace("F_",""));st_messung.measure()}}pe_addRememberSucheFilter()};this._getPriceFilter=function(f){var g=new Array();var h=exsu._getFilterChangesPreisReduziert();var l=exsu.FILTEROPTIONPREFIX+exsu.PARAMETERKEY_PRICEREDUCED;if(h){var e=l+"="+encodeURIComponent("true");g.push(e)}else{plm.removeParameterFromHashWithPrefix(new Array(l))}var j=encodeURIComponent(exsu._getFilterChangesPreisSlider(f));var k=exsu.FILTEROPTIONPREFIX+exsu.PARAMETERKEY_PRICE;if(j&&j.length>0){var e=k+"="+j;g.push(e)}else{plm.removeParameterFromHashWithPrefix(new Array(l))}return g};this._getFilterChangesSelected=function(){var f={};var e=$("expertenSuche").getElements(".exSuBlock  .blockList");e.each(function(h,l,j){var g=new Array();var k=h.getElements(".entry input[type=checkbox]");k.each(function(n,o,m){if(n.checked){g.include(n.get("value"))}});f[h.get("id")]=g});return f};this._getFilterChangesSelectedFromHashInUrl=function(){var g={};var f=gf_getHashFromURL();if(f&&f.length>0){var e=f.split("&");e.each(function(m,p,q){var l=decodeURIComponent(m);if(l.indexOf(exsu.FILTEROPTIONPREFIX)>=0){var j=exsu.FILTEROPTIONPREFIX+exsu.PARAMETERKEY_PRICEREDUCED;var h=exsu.FILTEROPTIONPREFIX+exsu.PARAMETERKEY_PRICE;if(l.indexOf(j)<0&&l.indexOf(h)<0){var r=exsu.FILTEROPTIONPREFIX.length;var k=l.indexOf("[");var n=l.substring((r+2),k);var s=l.indexOf("=")+1;var o=l.substring(s,l.length);if(!g[n]){g[n]=new Array()}g[n].include(o)}}})}return g};this._getExpanderHashParamFromDom=function(){var e=new Array();var g="";var f=$("expertenSuche").getElements(".exSuBlock");f.each(function(j,m,k){var l=j.getElement(".reducer");if(l){var h=j.getElement(".blockList");e.include(h.get("id"));g=g+h.get("id")+exsu.VALUEDELIMITER}});return g};this._getExpanderFromHashInUrl=function(){return exsu._getNamedParameterFromHashInUrl(exsu.PARAMETERKEY_EXPANDED)};this._getOpenerFromHashInUrl=function(){return exsu._getNamedParameterFromHashInUrl(exsu.PARAMETERKEY_OPENER)};this._getNamedParameterFromHashInUrl=function(e){var h=new Array();var g=gf_getHashFromURL();if(g&&g.length>0){var f=g.split("&");f.each(function(k,o,l){var j=k.indexOf(e);if(j>=0){var n=j+e.length+1;var m=k.substring(n,k.length);h=m.split(exsu.VALUEDELIMITER)}})}return h};this._getFilterChangesPreisFromHashInUrl=function(){var e={};var g=gf_getHashFromURL();if(g&&g.length>0){var f=g.split("&");f.each(function(l,p,q){var k=decodeURIComponent(l);var r=k.indexOf(exsu.PARAMETERKEY_PRICE);if(r>=0){var j=r+exsu.PARAMETERKEY_PRICE.length+1;var m=k.substring(j,k.length);var o=m.split(exsu._DELIMITER_PRICESLIDER)[0];var h=m.split(exsu._DELIMITER_PRICESLIDER)[1];if(o==0){o==""}if(h>=9999999){h=""}e[exsu._PRICEFILTER_VONKEY]=o;e[exsu._PRICEFILTER_BISKEY]=h}else{var n=exsu.FILTEROPTIONPREFIX+exsu.PARAMETERKEY_PRICEREDUCED;var r=k.indexOf(n);if(r>=0){var j=r+n.length+1;var m=k.substring(j,k.length);e[exsu.PARAMETERKEY_PRICEREDUCED]=m}}})}return e};this._setExpanderToHashInUrl=function(e){exsu._showAjaxLoad(e);var f=exsu._getExpanderHashParamFromDom();if(f&&f.length>0){plm.addParameterToHash(exsu.PARAMETERKEY_EXPANDED,f)}else{plm.removeParameterFromHashWithPrefix(new Array(exsu.PARAMETERKEY_EXPANDED))}};this._addOpenerToHashInUrl=function(f){var g=exsu._getOpenerFromHashInUrl();var e=f;if(g.indexOf(e)<=-1){g.include(e)}var h="";g.each(function(j,l,k){if(l>0){h=h+exsu.VALUEDELIMITER}h=h+j});if(h.length>0){plm.addParameterToHash(exsu.PARAMETERKEY_OPENER,h)}else{plm.removeParameterFromHashWithPrefix(new Array(exsu.PARAMETERKEY_OPENER))}};this._removeOpenerFromHashInUrl=function(f){var g=exsu._getOpenerFromHashInUrl();var e=f;if(g.indexOf(e)>-1){g.erase(e)}var h="";g.each(function(j,l,k){if(l>0){h=h+exsu.VALUEDELIMITER}h=h+encodeURIComponent(j)});if(h.length>0){plm.addParameterToHash(exsu.PARAMETERKEY_OPENER,h)}else{plm.removeParameterFromHashWithPrefix(new Array(exsu.PARAMETERKEY_OPENER))}};this._getFilterChangesPreisReduziert=function(){var e=$("reduzierteArtikel");var f=false;if(e&&e.checked){f=true}return f};this._getFilterChangesPreisSlider=function(f){var g=$("priceFilter");var h="";if(g){var l=g.getElement(".slider .priceInputs .von");var j=g.getElement(".slider .priceInputs .bis");var e=l.get("value").replace(",",".");var k=j.get("value").replace(",",".");if((e&&e.length>0)||(k&&k.length>0)){if((e.length>0&&isNaN(e.toFloat()))||(k.length>0&&isNaN(k.toFloat()))){alert("Bitte geben Sie einen gültigen Preis ein (z.B.: 12,99).");l.set("value","");j.set("value","");exsu._hashDetector(f,true)}else{if(isNaN(e.toFloat())){e=0}if(isNaN(k.toFloat())){k=9999999}h=e+exsu._DELIMITER_PRICESLIDER+k}}}return h};this._getFilterParams=function(e){var f=new Array();var g=$("expertenSuche").getElements(".exSuBlock .blockList");g.each(function(h,l,k){var j=h.getElements("input[type=checkbox]");j.each(function(o,p,n){if(o.checked){var m=exsu.FILTEROPTIONPREFIX;m=m+"C$"+encodeURIComponent(h.get("id"))+"["+p+"]";m=m+"="+o.get("value");f.push(m)}})});return f};this._showAjaxLoad=function(f){var e=$("expertenSuche").getElements(".exSuBlock .blockList");e.each(function(j,m,l){var h=j.getNext(".ajaxLoad");if(j.get("id")!=f&&!h){var k="/pics/11/ajaxload.gif";var g=html.IMG({src:k,"class":"ajaxLoad"});g.inject(j,"after");j.addClass("invisible")}})};this._setCheckBoxChecked=function(e,f){if(f==null){f=false}e.checked=f;e.defaultChecked=f};this._hashDetector=function(f,e){var j=gf_getHashFromURL();if((j!=d)||e){d=j;if(!e){dataStorage.store("filterHash",j);dataStorage.store("filterHashKID",f)}var k=exsu._getFilterChangesSelectedFromHashInUrl();var h=exsu._getExpanderFromHashInUrl();var g=exsu._getFilterChangesPreisFromHashInUrl();exsu._loadMetaData(f,k,h,g);exsu._disposeLeerFilterDialog()}return false};this.initFilterNavi=function(f){exsu._hashDetector(f,true);if(!gf_getHashFromURL()){var g=dataStorage.get("filterHash");var e=dataStorage.get("filterHashKID");if(g!=null&&e==f){plm._setNewHash(g)}}kdeEventManager.addListener("TIMER100",function(){exsu._hashDetector(f,false)})};this._setKeyVisualProductCount=function(f){return false;var h=$("keyVisualProduktAnzahl");if(h){if(f==exsu._NOFILTERPRODUCTCOUNT){h.removeClass("invisible");var g=$("filterKeyVisualProduktAnzahl");if(g){g.dispose()}}else{h.addClass("invisible");var e="";if(f>0){e="("+f+")"}var g=$("filterKeyVisualProduktAnzahl");if(g){g.set("text",e)}else{g=html.SPAN({text:e,id:"filterKeyVisualProduktAnzahl"});g.inject(h,"after")}}}}}var exsu=new exSuManager();
