/*
 * Exorbyte Search jQuery plug-in.
 *
 * Copyright (c) 2010 exorbyte GmbH.  All rights reserved.
 *
 * Version: $Id: exorbyte-search.min.js 2897 2010-06-24 13:48:16Z plancaster $
 *
 */
(function(a){a.fn.extend({mainsearch:function(d,i){i=a.extend({},a.Mainsearch.defaults,{url:typeof d=="string"?d:null},i);i.formatAddToCart=typeof i.formatAddToCart=="function"?i.formatAddToCart:function(){return""};i.onFormSubmit=typeof i.onFormSubmit=="function"?i.onFormSubmit:function(){return false};i.makeResultsDiv=typeof i.makeResultsDiv=="function"?i.makeResultsDiv:function(){return false};return this.each(function(){new a.Mainsearch(this,i)})},setOptionsMS:function(d){return this.trigger("setOptionsMS",
[d])},unmainsearch:function(){return this.trigger("unmainsearch")}});a.Mainsearch=function(d,i){function x(){P.noResults()}function U(g,e){if(a("#exo-results").length)a("#exo-results").empty();else try{i.makeResultsDiv()}catch(G){if(!a("#exo-results").length)return}e&&typeof e=="object"?P.display(e,g):x()}function T(g,e,G,n){if(typeof i.url=="string"&&i.url.length>0){var b={sv:"search",q:g.q.replace(/\$amp;/g,"&").replace(/\$eq;/g,"="),wt:"json"};a.each(i.extraParams,function(o,h){if(h)b[o]=typeof h==
"function"?h():h});a.ajax({mode:"abort",port:"mainsearch"+d.name,dataType:"text",cache:i.httpCaching,url:i.url,data:a.extend(b,e),success:function(o){var h=o;h=i.parse&&i.parse(o)||eval("("+o+")");G(g,h)}})}else n()}var P=a.Mainsearch.Select(i,a("#exo-results")),u;a(d).bind("setOptionsMS",function(g,e){a.extend(i,e)});a("body").append("<a rel='ms-main-history' id='_mainsearch' href='#' style='opacity:0;font-size:1px;'>.</a>");a(d).parents("form").submit(function(){var g=encodeURI(a(d).val()).replace(/&/g,
"$amp;").replace(/=/g,"$eq;");a("#_mainsearch").attr("href","#q="+g).click();a(d).blur();var e=false;try{e=i.onFormSubmit(g)}catch(G){}if(e!==true)e=false;return e});a.history.init(function(g){if(g==""&&a("#exo-results > div").length)a.browser.msie&&(a.browser.version<8||document.documentMode<8)||location.reload();if(typeof g=="string"&&g.search(".*q=.+")>=0){if(a.browser.msie)g=g.replace(/^.*#/,"");g=decodeURIComponent(g);g=g.split("&");var e={};a.each(g,function(L,y){var w=y.split("=");e[w[0]]=
w[1]});if(e.q){if(!u||e.q!=u){u=e.q;a.Autocompleter.SubmitTrackingMsg&&a.Autocompleter.SubmitTrackingMsg(e.q.replace(/\$amp;/g,"&").replace(/\$eq;/g,"="),null,null,null,"fullsearch",i)}g=e.npp?parseInt(e.npp):i.rowsPerPage;var G=(e.p?e.p-1:0)*g,n=e.sort?e.sort:i.defaultSorting,b=e.catl?parseInt(e.catl):1;e.pmin&&parseInt(e.pmin);e.pmax&&parseInt(e.pmax);var o=e.plo?parseInt(e.plo):"*",h=e.phi?parseInt(e.phi):"*",p=[],v=e.cats?e.cats.split("|"):[];a.each(v,function(L){p.push("Category:"+v[L])});if(o!=
"*"||h!="*")p.push("Price:["+o+" TO "+h+"]");e.brand&&p.push("Brand:"+e.brand);g={rows:g,sort:n,facet_query:"Category:"+b,start:G};if(p.length>0)g.fq=p.join("+");if(i.sortBrandsByCount===false)g["f.Brand.facet_sort"]="index";if(i.sortCategoriesByCount===false)g["f.Category.facet_sort"]="index";T(e,g,U,x)}else x()}},"");a("a[rel='ms-main-history']").click(function(){var g=this.href;g=g.replace(/^.*#/,"");a.history.load(g);return false})};a.Mainsearch.defaults={currencySymbol:"&euro;",currencySymbolAfterPrice:true,
decimalPoint:",",noResultsMsg:"Es wurden keine Treffer gefunden.",of:"von",to:"bis",results:"Treffer",sortBy:"Sortieren nach",relevance:"Relevanz",lowestPrice:"Niedrigster Preis",highestPrice:"H&ouml;chster Preis",categories:"Kategorien",brands:"Hersteller",prices:"Preis einschr&auml;nken",brand:"Hersteller",more:"weitere",deselect:"Aufheben",httpCaching:true,formatAddToCart:function(){return""},onFormSubmit:function(){return false},makeResultsDiv:function(){return false},addToCart:false,sortCategoriesByCount:true,
sortBrandsByCount:false,projectId:-1,extraParams:{},defaultSorting:"score",imageDir:"img",rowsPerPage:15};a.Mainsearch.Select=function(d){function i(){a("#exo-results").html("<div>"+d.noResultsMsg+"</div>")}function x(n){var b="#";a.each(n,function(o,h){if(h)b+=o+"="+urlencode(h)+"&"});return b.substr(0,b.length-1)}function U(n,b){e=b.npp?parseInt(b.npp):d.rowsPerPage;G=b.p?b.p-1:0;var o=G*e,h=b.sort?b.sort:d.defaultSorting,p=b.catl?parseInt(b.catl):1,v=b.pmin?parseInt(b.pmin):"*",L=b.pmax?parseInt(b.pmax):
"*",y=b.plo?parseInt(b.plo):"*",w=b.phi?parseInt(b.phi):"*",l=b.cats?b.cats.split("|"):[],H=n.response.docs,s=n.facet_counts&&n.facet_counts.facet_fields.Brand,q=n.facet_counts&&n.facet_counts.facet_fields.Category,t=n.facet_counts&&n.facet_counts.facet_fields.Price,V=n.response.numFound,W=H.length,I=o+1,Z=o+W;if(W<=0)i();else{var J=a("<div/>").attr("id","exo-facet-hdr").appendTo(a("#exo-results"));u=a("<div/>").attr("id","exo-facets").appendTo(a("#exo-results"));var c;if(h=="Brand"&&s&&s.length<
4)h="score";if(q||l.length>0){a("<h3/>").html(d.categories).appendTo(J);var M=a("<div/>").addClass("exo-cats").appendTo(u),z=a("<ol/>").appendTo(M),Q=z;if(!b.cats){b.cats="";b.catl=1}var A=b.cats;p=b.p=1;var r;if(l.length>0){b.cats="";b.catl=0;url=x(b);a("<li/>").html("<span class='exo-FName exo-wide-cat exo-bold'><a rel='ms-history' title='"+d.deselect+"' href='"+url+"'>&lsaquo; "+decodeURIComponent(l[0].substr(1))+"</a></span>&nbsp;").appendTo(z);r=l[0];for(c=1;c<l.length;){b.cats=r;b.catl=++p;
url=x(b);if(c>0)z=a("<ol/>").addClass("exo-cats-list").appendTo(z);a("<li/>").addClass("exo-li-height").html("<span class='exo-FName exo-wide-cat exo-bold'><a rel='ms-history' title='"+d.deselect+"' href='"+url+"'>&lsaquo; "+decodeURIComponent(l[c].substr(1))+"</a></span>&nbsp;").appendTo(z);c++;r+="|"+l[c-1]}z=a("<ol/>").addClass("exo-cats-list").appendTo(z);p++}var j=a(z).outerHeight();l=j;var K;if(q&&p<=4){r=A?A+"|":"";var m;for(c=0;c<q.length;c+=2){j=a(Q).outerHeight();m=a(M).outerHeight();if(j>
l&&j>m){for(var k=j-l;l>m-g;)l-=k;a(Q).css({"max-height":l,overflow:"hidden",position:"relative"});a("<div/>").addClass("exo-more").html(d.more+"&hellip;").click(function(){a(Q).removeAttr("style");a(M).addClass("exo-facet-border").css("overflow-y","auto");a(this).remove()}).appendTo(M)}K=l;l=j;b.cats=r+urlencode(q[c]);b.catl=p+1;url=x(b);lastNode=a("<li/>").addClass("exo-li-height").html("<span class='exo-FName exo-slim-cat'><a rel='ms-history' href='"+url+"' title='"+q[c].substr(1)+"'>"+q[c].substr(1)+
"</a></span>&nbsp;<span class='exoFCount'>("+q[c+1]+")</span>").appendTo(z)}j=a(Q).outerHeight();m=a(M).outerHeight();if(j>l&&j>m){for(k=j-l;l>m-g;)l-=k;a(Q).css({"max-height":l,overflow:"hidden",position:"relative"});a("<div/>").addClass("exo-more").html(d.more+"&hellip;").click(function(){a(z).removeAttr("style");a(M).addClass("exo-facet-border").css("overflow-y","auto");a(this).remove()}).appendTo(M)}b.p=G+1}b.cats=A;b.catl=p}if(s){a("<h3/>").html(d.brands).appendTo(J);var N=a("<div/>").addClass("exo-brands").appendTo(u);
p=a("<div/>").appendTo(N);var B;k=0;q=[];if(b.brand)q=decodeURIComponent(b.brand).split("|");A=[];if(q.length){c=a("<form/>").appendTo(p);B=a("<ul/>").addClass("exo-brand-sel").appendTo(c)}for(k=0;k<q.length;k++){C=true;for(c=0;c<s.length;c+=2)if(s[c]==q[k])C=false;if(!C){j=a("<li/>").appendTo(B);j=a("<label/>").attr("for","exo-sel-brand"+k).addClass("selected").html("<input id='exo-sel-brand"+k+"' class='exo-cbox' value='"+urlencode(q[k])+"' type='checkbox' checked='yes'><span class='exo-FName'>"+
q[k]+"</span>").appendTo(j);A.push(urlencode(q[k]))}}r=0;if(B)r=a(B).outerHeight();var O=a("<form/>").appendTo(p);B=a("<ul/>").addClass("exo-brand-sel").appendTo(O);l=j=a(B).outerHeight();m=0;var C;for(c=0;c<s.length;c+=2){j=a(B).outerHeight()+r;k=a(N).outerHeight();if(!m&&j>r&&j>k){m=K-r;a(B).css({"max-height":m,overflow:"hidden",position:"relative"});if(z=a(".exo-cats > ol[style*='height']")){C=a(z).outerHeight()-r;if(C>0&&m!=C)m=C}a(O).css({height:m});m=a("<div/>").addClass("exo-more").html(d.more+
"&hellip;").click(function(){a(O).removeAttr("style");a(B).removeAttr("style");a(N).addClass("exo-facet-border").css("overflow-y","auto");a(this).remove()}).appendTo(p)}C=false;for(k=0;k<q.length;k++)if(s[c]==q[k])C=true;if(!C){K=l;l=j;j=a("<li/>").appendTo(B);j=a("<label/>").attr("for","exo-brand"+c).html("<input id='exo-brand"+c+"' class='exo-cbox' value='"+urlencode(s[c])+"' type='checkbox'><span class='exo-FName exo-slim-cat'>"+s[c]+"</span>&nbsp;<span class='exoFCount'>("+s[c+1]+")</span>").appendTo(j)}}j=
a(B).outerHeight()+r;k=a(N).outerHeight();if(!m&&j>r&&j>k){m=K-r;a(B).css({"max-height":m,overflow:"hidden",position:"relative"});if(z=a(".exo-cats > ol[style*='height']")){C=a(z).outerHeight()-r;if(C>0&&m!=C)m=C}a(O).css({height:m});m=a("<div/>").addClass("exo-more").html(d.more+"&hellip;").click(function(){a(O).removeAttr("style");a(B).removeAttr("style");a(N).addClass("exo-facet-border").css("overflow-y","auto");a(this).remove()}).appendTo(p)}if(r>0&&k!=r)if(m){if(a(p).outerHeight()>k){a(O).removeAttr("style");
a(B).removeAttr("style");a(N).addClass("exo-facet-border").css("overflow-y","auto");a(m).remove()}}else r>k&&a(N).addClass("exo-facet-border").css("overflow-y","auto");b.brand=A.join("|");a("input.exo-cbox").click(function(){var f=a(this).attr("checked");a(this).closest("label").toggleClass("selected",f);var E=[];a("label.selected > input.exo-cbox").each(function(){E.push(a(this).val())});b.brand=E.length?E.join("|"):"";b.p=1;f=x(b);f=f.replace(/^.*#/,"");a.history.load(f)})}a("<h3/>").html(d.prices).appendTo(J);
J=a("<div/>").addClass("exo-price").appendTo(u);if(t&&t.length>=2){A=t.length;t[A]=t[A-2]+1;t[A+1]=0;A+=2;K=parseInt(t[0]);l=parseInt(t[A-2]);var F=[],R=false;m=r=false;if(y==="*"||y===K)y=K;else r=R=true;if(w==="*"||w===l)w=l;else m=R=true;J.html("<table id='exo-price-hdr'><tr><td><input type='text' id='exo-pmin' value='"+y+"'/></td><td class='exo-center exo-bold'><label for='exo-pmax'>"+d.to+"</label></td><td class='exo-right'><input type='text' id='exo-pmax' value='"+w+"'/>&nbsp;<span class='exo-bold'>"+
d.currencySymbol+"</span></td></tr></table><div id='exo-price-slider'></div>");j=0;q=p=A/2-1;k=0;var D={};if(R){for(c=0;c<A;c+=2){k+=t[c+1];F[c]=t[c];F[c+1]=k;if(r&&j===0&&y<=F[c])j=c/2;if(m&&q===p&&w<=F[c])q=c/2}D.pmax=0;D.pmin=0;D.phi=0;D.plo=0;D.p=0;url="#";a.each(b,function(f,E){if(E&&D[f]!=0)url+=f+"="+urlencode(E)+"&"});url=url.substr(0,url.length-1);c=0;if(j>0)c=F[j*2-1];a("<div id='exo-price-count'><span id='exo-price-clr'><a rel='ms-history' class='exo-x' href='"+url+"'><img src='"+d.imageDir+
"/theX.png' alt='x' title='"+d.deselect+"'/></a></span>&nbsp;"+d.results+":&nbsp;<span id='exo-price-cnt' class='exoFCount'>"+(F[q*2+1]-c)+"</span></div>").appendTo(J)}else{for(c=0;c<t.length;c+=2){k+=t[c+1];F[c]=t[c];F[c+1]=k}a("<div id='exo-price-count'><span id='exo-price-clr' class='exo-x exo-x-gray'><img src='"+d.imageDir+"/theX-gray.png' alt='x'/></span>&nbsp;"+d.results+":&nbsp;<span class='exoFCount'>"+k+"</span></div>").appendTo(J)}if(v==="*")v=K;if(L==="*")L=l;a("#exo-price-slider").slider({range:true,
min:0,max:p,values:[j,q],slide:function(f,E){var S=E.values[0]*2,X=E.values[1]*2,$=F[S],aa=F[X],Y=0;if(S>0)Y=F[S-1];S=F[X+1]-Y;a("#exo-pmin").val($);a("#exo-pmax").val(aa);a("#exo-price-count > span.exoFCount").html(S)},change:function(){y=parseInt(a("#exo-pmin").val());w=parseInt(a("#exo-pmax").val());b.pmax=L;b.pmin=v;b.p=0;var f=false;if(w!==L&&b.phi===undefined||b.phi>0&&b.phi!=w){b.phi=w;f=true}if(y!==v&&b.plo===undefined||b.plo>0&&b.plo!=y){b.plo=y;f=true}if(f){f=x(b);f=f.replace(/^.*#/,"");
a.history.load(f)}}});a("#exo-pmin").blur(function(){if(parseInt(a(this).val())<0){a(this).val(y);return false}var f=a("#exo-price-slider").slider("values",0);a("#exo-price-slider").slider("values",0,f)}).keydown(function(f){if(f.keyCode==13){if(parseInt(a(this).val())<0){a(this).val(y);return false}f=a("#exo-price-slider").slider("values",0);a("#exo-price-slider").slider("values",0,f)}});a("#exo-pmax").blur(function(){if(parseInt(a(this).val())<0){a(this).val(w);return false}var f=a("#exo-price-slider").slider("values",
1);a("#exo-price-slider").slider("values",1,f)}).keydown(function(f){if(f.keyCode==13){if(parseInt(a(this).val())<0){a(this).val(w);return false}f=a("#exo-price-slider").slider("values",1);a("#exo-price-slider").slider("values",1,f)}})}else{if(y!="*"||w!="*")R=true;D={};if(R){D.pmax=0;D.pmin=0;D.phi=0;D.plo=0;D.p=0;url="#";a.each(b,function(f,E){if(E&&D[f]!=0)url+=f+"="+urlencode(E)+"&"});url=url.substr(0,url.length-1);a('<span id="exo-price-clr"><a rel="ms-history" href="'+url+'">Aufheben</a></span> ').appendTo(J)}}u=
a("<div/>").attr("id","exo-header").appendTo(a("#exo-results"));t=a("<div/>").addClass("exo-headerLine").appendTo(u);t.addClass("first");T(t,V,G,b);t=a("<div/>").addClass("exo-headerLine").appendTo(u);t.append("<span id='exo-numRes'>"+I+" &ndash; "+Z+" "+d.of+" "+V+" "+d.results+"</span>");I=a("<span/>").attr("id","exo-numPerPage").appendTo(t);for(c=d.rowsPerPage;c<=d.rowsPerPage*4;c*=2)if(c==e)a('<span class="current">'+c+"</span> ").appendTo(I);else{b.p=1;b.npp=c;url=x(b);a('<span class="exo-npp"><a rel="ms-history" href="'+
url+'">'+c+"</a></span> ").appendTo(I)}b.npp=e;c=a("<span/>").addClass("exo-sorting").appendTo(t);c.text(d.sortBy+" ");c=a("<select/>").appendTo(c).change(function(){b.sort=a(this).val();b.p=0;var f=x(b);f=f.replace(/^.*#/,"");a.history.load(f)});I="";if(s&&s.length>=4)I='<option value="Brand">'+d.brand+"</option>";c.html('<option value="score">'+d.relevance+"</option>"+I+'<option value="Price">'+d.lowestPrice+'</option><option value="Price desc">'+d.highestPrice+"</option>").val(h);u=a("<div/>").attr("id",
"exo-result-list").addClass("listview").appendTo(a("#exo-results"));a("<div/>").addClass("exo-result-sep").appendTo(u);for(c=0;c<W;c++){h=o+c+1;s=H[c].SN_name.replace(/\'/g,"&rsquo;");I="";if(H[c].Image)I="<a class='exo-prod-url' rel='"+h+"' href='"+H[c].URL+"' title='"+s+"'><img alt='' src='"+H[c].Image+"' title='"+s+"'/></a>";h="<div class='exo-img'><div>"+I+"</div></div><div class='exo-desc'><div class='exo-prodName'><a class='exo-prod-url' rel='"+h+"' href='"+H[c].URL+"' title='"+s+"'>"+H[c].SN_name+
"</a></div>";h+="<div class='exo-prodDesc'>"+H[c].Description+"</div>";s=d.formatAddToCart(H[c]);if(typeof s=="string"&&s.length>0)h+="<div class='exo-addToCart'>"+s+"</div>";h+="<div class='exo-prodPrice'>";h+=d.currencySymbolAfterPrice?H[c].Price.replace(".",d.decimalPoint)+" "+d.currencySymbol:d.currencySymbol+H[c].Price.replace(".",d.decimalPoint);h+="</div></div>";a("<div/>").addClass("exo-result").html(h).appendTo(u);a("<div/>").addClass("exo-result-sep").appendTo(u)}T(u,V,G,b);a("a[rel='ms-history']").click(function(){var f=
this.href;f=f.replace(/^.*#/,"");a.history.load(f);return false});a("a.exo-prod-url").bind("mousedown.exo",function(){a.Autocompleter.SubmitTrackingMsg(b.q,a(this).attr("title"),null,a(this).attr("rel"),"lp_click",d)})}}function T(n,b,o,h){b=Math.ceil(b/e);var p=Math.min(b,o+4),v=Math.max(0,o-3);if(b>1){n=a("<span/>").addClass("exo-pager").appendTo(n);if(v>0){h.p=1;url=x(h);a('<span class="exo-page-number"><a rel="ms-history" href="'+url+'">&laquo;</a></span> ').appendTo(n);a('<span class="exo-page-number">&hellip;</span> ').appendTo(n)}for(;v<
p;v++)if(v==o)a('<span class="exo-page-number exo-actual-page">'+(v+1)+"</span> ").appendTo(n);else{h.p=v+1;url=x(h);a('<span class="exo-page-number"><a rel="ms-history" href="'+url+'">'+(v+1)+"</a></span> ").appendTo(n)}if(v<b){a('<span class="exo-page-number">&hellip;</span> ').appendTo(n);h.p=b;url=x(h);a('<span class="exo-page-number"><a rel="ms-history" href="'+url+'">&raquo;</a></span> ').appendTo(n)}}}var P=true,u,g,e,G;return{display:function(n,b){if(P){var o=document.createElement("div");
document.body.appendChild(o);a(o).css({position:"absolute",left:-1000,top:-1000,display:"none"});a("<div/>").addClass("exo-more").html(d.more+"&hellip;").appendTo(o);g=a(o).outerHeight();a(o).remove();P=false}U(n,b)},noResults:function(){i()}}}})(jQuery);

