var l10n={en:{g:["Kategorie durchsuchen",""],x:["","Passende Hersteller zu Ihrer Suche"],k:["","Empfohlene Kategorien zu Ihrer Suche"],m:["",""],p:["Produkt anzeigen",""],c:["",""],o:["Angebot anzeigen",""],s:["Suchvorschlag","Suche nach:"]},de:{g:["Kategorie durchsuchen",""],x:["","Passende Hersteller zu Ihrer Suche"],k:["","Empfohlene Kategorien zu Ihrer Suche"],m:["",""],p:["Produkt anzeigen",""],c:["",""],o:["Angebot anzeigen",""],s:["Suchvorschlag","Suche nach:"]},fr:{g:["Kategorie durchsuchen",""],x:["","Passende Hersteller zu Ihrer Suche"],k:["","Empfohlene Kategorien zu Ihrer Suche"],m:["",""],p:["Produkt anzeigen",""],c:["",""],o:["Angebot anzeigen",""],s:["Suchvorschlag","Suche nach:"]}};
function RTrim(A){return A.replace(/\s+$/,"")
}function LTrim(A){return A.replace(/^\s+/,"")
}function Trim(A){return RTrim(LTrim(A))
}function AjaxResponse(A,B,C,D){this.ajaxRequest=A;
this.request=B;
if(C){this.responseText=C
}if(D){this.responseXML=D
}}var GET_METHOD="GET";
function AjaxRequest(A,E,C,B,D){this.url=A;
if(E&&""!=E){this.method=E
}else{this.method=GET_METHOD
}if(C){this.okHandler=C
}if(B){this.data=B
}if(D){this.obj=D
}}AjaxRequest.prototype.createRequest=function createRequest(){var A=false;
if(window.XMLHttpRequest){try{A=new XMLHttpRequest()
}catch(B){}}else{if(window.ActiveXObject){try{A=new ActiveXObject("Microsoft.XMLHTTP")
}catch(B){try{A=new ActiveXObject("Msxml2.XMLHTTP")
}catch(B){}}}}return A
};
AjaxRequest.prototype.setURL=function setURL(A){this.url=A
};
AjaxRequest.prototype.getURL=function getURL(){return this.url
};
AjaxRequest.prototype.setOkHandler=function setOkHandler(A){this.okHandler=A
};
AjaxRequest.prototype.getOkHandler=function getOkHandler(){return this.okHandler
};
AjaxRequest.prototype.setErrorHandler=function setErrorHandler(A){this.errorHandler=A
};
AjaxRequest.prototype.getErrorHandler=function getErrorHandler(){return this.errorHandler
};
AjaxRequest.prototype.setHeaders=function setHeaders(B,A){this.headerNames=B;
this.headerValues=A
};
AjaxRequest.prototype.getResponse=function getResponse(){return this.response
};
AjaxRequest.prototype.send=function send(){if(this.url==null){return 
}var C=this.createRequest();
if(C){var A=this;
C.onreadystatechange=function(){if(A.handler!=null){A.handler(new AjaxResponse(C))
}if(C.readyState==4){try{if(C&&C.status==200){if(A.okHandler!=null){A.okHandler(new AjaxResponse(A,C,C.responseText),A.obj)
}}else{if(A.errorHandler){A.errorHandler("There was a problem with your request.",new AjaxResponse(C))
}}}catch(E){}}};
C.open(this.method,this.url,true);
if(this.headerNames){var D=this.headerNames.length;
for(var B=0;
B<D;
B++){C.setRequestHeader(this.headerNames[B],this.headerValues[B])
}}if(this.method==GET_METHOD){C.send(null)
}else{C.send(this.data)
}}else{if(this.errorHandler){this.errorHandler("Can't create Ajax request.")
}}};
function SearchSuggest(A){this._searchSuggestionFlag=A.searchSuggestionFlag;
this._inputSearchText=A.inputSearchText;
this._requestURL=A.requestURL;
this._channelURL=A.channelURL;
this._fillDivObjects=A.fillDivObjects;
this._suggVisible=false;
this.suggBox=A.suggBox;
this._suggestOnOffObj=A.suggestOnOffObj;
this._activeText=A.activeText;
this._deactiveText=A.deactiveText;
this.timeout=null;
this.delayTime=A.delayTime;
this.startChar=A.startChar;
this._lastResponseTime=0;
this._lang=A.lang;
this._normalfg="black";
this._normalbg="";
this._highlightfg="#0873B9";
this._highlightbg="#ABCFE7";
this._iDiv=[];
this._highlightedId=-1;
var B=this;
this._inputSearchText.onkeydown=function(C){B.onKeyDown.call(B,C)
};
this._inputSearchText.onfocus=function(){B.setSearchTimeout(B.delayTime)
};
this._inputSearchText.onblur=function(){B.hide()
}
}SearchSuggest.prototype.suggestHandler=function suggestHandler(ajaxResponse,searchSuggest){var t=ajaxResponse.ajaxRequest.data;
if(searchSuggest._lastResponseTime>t){return 
}searchSuggest._lastResponseTime=t;
var responseArray=eval(ajaxResponse.responseText);
this._numResults=responseArray[1];
this._rows=responseArray[3];
this._suggCount=responseArray[3].length;
if(this._suggCount>0){searchSuggest.fillDiv.call(searchSuggest,searchSuggest._inputSearchText,responseArray[2],responseArray[3]);
searchSuggest.show.call(searchSuggest)
}else{searchSuggest._suggVisible=false;
searchSuggest.suggBox.style.visibility="hidden"
}};
SearchSuggest.prototype.suggestErrorHandler=function suggestErrorHandler(B,A){alert(B+" : "+A.getRequest().status)
};
SearchSuggest.prototype.fillDiv=function fillDiv(H,B,M){var G=this;
var F=this._fillDivObjects.questionDiv;
if(F){while(F.hasChildNodes()){F.removeChild(F.firstChild)
}F.innerHTML=this.replaceHTMLEntities(H.value)
}var A=this._fillDivObjects.anzahlDiv;
if(A){while(A.hasChildNodes()){A.removeChild(A.firstChild)
}A.innerHTML=this._numResults
}var I=this._fillDivObjects.suggestCount;
if(I){while(I.hasChildNodes()){I.removeChild(I.firstChild)
}I.innerHTML=M.length
}var C=this._fillDivObjects.itemDiv;
var E=C;
while(C.hasChildNodes()){C.removeChild(C.firstChild)
}this._iDiv=[];
var L=function(N){G._iDiv[N].onmousedown=function(){G.rowOnMouseDown.call(G,N)
};
G._iDiv[N].onmouseover=function(){G.rowOnMouseOver.call(G,N)
}
};
for(i=0;
i<M.length;
i++){this._iDiv[i]=document.createElement("div");
L(i);
this._iDiv[i].id="suggRow_"+i;
this._iDiv[i].className="suggRow";
this._iDiv[i].style.cursor="pointer";
if(M[i].length==4){var J=M[i][2].substring(0,1);
var D=l10n[this._lang][J][0];
if(J=="k"||J=="x"){C=document.createElement("div");
C.className="suggCategoriesGroup";
E.appendChild(C);
var K="<div class='suggItem suggItemHead'><span class='suggCatHead'><nobr><img src='"+this._channelURL+"/images/group-category-top.gif' width='14' height='14' >&nbsp;"+l10n[this._lang][J][1]+"&nbsp;&nbsp;</nobr></span><span class='suggType'><nobr>"+D+"</nobr></span></div>"
}else{if(J=="g"){if(!C.isItemDiv){C=document.createElement("div");
C.className="suggItemGroup";
C.isItemDiv=true;
E.appendChild(C)
}var K="<div class='suggItem suggItemHead'><span class='suggCat'><nobr><img src='"+this._channelURL+"/images/group-category.gif' width='14' height='14' >&nbsp;"+this.replaceHTMLEntities(M[i][0])+"&nbsp;&nbsp;</nobr></span><span class='suggType'><nobr><img src='"+this._channelURL+"/images/spacer.gif' width='14' height='14' >"+D+"</nobr></span></div>"
}else{if(J=="s"){var K="<div class='suggItem'><span class='suggProduct'><nobr><img src='"+this._channelURL+"/images/spacer.gif' width='14' height='11' >&nbsp;"+l10n[this._lang][J][1]+"&nbsp;"+this.replaceHTMLEntities(M[i][0])+"&nbsp;&nbsp;</nobr></span><span class='suggTypeSearch'><nobr><img src='"+this._channelURL+"/images/spacer.gif' width='1' height='11' >"+D+"</nobr></span></div>"
}else{var K="<div class='suggItem'><span class='suggProduct'><nobr><img src='"+this._channelURL+"/images/spacer.gif' width='14' height='11' >&nbsp;"+this.replaceHTMLEntities(M[i][0])+"&nbsp;&nbsp;</nobr></span><span class='suggType'><nobr><img src='"+this._channelURL+"/images/spacer.gif' width='1' height='11' >"+D+"</nobr></span></div>"
}}}}else{var K="<div class='suggItem'><span class='suggProduct'><nobr>&nbsp;&nbsp;</nobr></span></div>"
}this._iDiv[i].innerHTML=this.maskSpecialChars(K);
C.appendChild(this._iDiv[i])
}this._lastHighlightedId=-1
};
SearchSuggest.prototype.show=function show(){if(this._suggVisible){return 
}this._suggVisible=true;
this.suggBox.style.visibility="visible"
};
SearchSuggest.prototype.hide=function hide(){if(!this._suggVisible){return 
}this._suggVisible=false;
this.suggBox.style.visibility="hidden"
};
SearchSuggest.prototype.replaceHTMLEntities=function replaceHTMLEntities(A){return A
};
SearchSuggest.prototype.maskSpecialChars=function maskSpecialChars(ih){var result="";
for(j=0;
j<ih.length;
j++){cc=ih.charCodeAt(j);
if(cc<128){result+=String.fromCharCode(cc)
}else{if(cc>255){result+="&#"+cc+";"
}else{eval('b = "\\'+cc.toString(8)+'"');
result+=b
}}}return result
};
SearchSuggest.prototype.rowOnMouseDown=function rowOnMouseDown(B){if(B>0){var A=-1;
if(typeof this._ajaxRequest._rows[B][3]!="undefined"&&this._ajaxRequest._rows[B][3].length>0){A=this._ajaxRequest._rows[B][3]
}this.submitForm(this._ajaxRequest._rows[B][1],A)
}this.hide()
};
SearchSuggest.prototype.rowOnMouseOver=function rowOnMouseOver(A){if(this._highlightedId==A){return 
}else{if(this._highlightedId!=-1&&this._iDiv[this._highlightedId]){this._iDiv[this._highlightedId].style.backgroundColor=this._normalbg;
this._iDiv[this._highlightedId].style.color=this._normalfg
}if(this._iDiv[A]){this._iDiv[A].style.backgroundColor=this._highlightbg;
this._iDiv[A].style.color=this._highlightfg
}this._highlightedId=A
}};
SearchSuggest.prototype.submitForm=function submitForm(C,A){this._inputSearchText.value=C;
this._inputSearchText.form._s_icmp.value="suggest";
var B=A.split(" ");
if(B.length>1){A=B[0]
}if(typeof this._inputSearchText.form.c!="undefined"){this._inputSearchText.form.categoryId.name="xcat";
this._inputSearchText.form.c.value=A==0?-1:A
}this._inputSearchText.form.submit()
};
SearchSuggest.prototype.setSearchSuggestion=function setSearchSuggestion(){this._searchSuggestionFlag=!this._searchSuggestionFlag;
var A=document.createElement("img");
A.src=this._channelURL+"/suggestState.do?suggestActive="+this._searchSuggestionFlag;
this.hide()
};
SearchSuggest.prototype.onKeyDown=function onKeyDown(B){B=(B)?B:((window.event)?event:null);
if(B){var A=(B.charCode)?B.charCode:((B.which)?B.which:B.keyCode);
switch(A){case 40:if(this._suggVisible){if(this._iDiv.length&&this._highlightedId<this._iDiv.length-1){this.rowOnMouseOver(this._highlightedId+1)
}}else{this.setSearchTimeout()
}break;
case 38:if(this._suggVisible){if(this._iDiv.length&&this._highlightedId>0){this.rowOnMouseOver(this._highlightedId-1)
}}else{this.setSearchTimeout()
}break;
case 33:if(this._suggVisible&&this._iDiv.length){this.rowOnMouseOver(0)
}break;
case 34:if(this._suggVisible&&this._iDiv.length){this.rowOnMouseOver(this._iDiv.length-1)
}break;
case 35:if(this._suggVisible&&this._iDiv.length){this.rowOnMouseOver(this._iDiv.length-1)
}break;
case 36:if(this._suggVisible&&this._iDiv.length){this.rowOnMouseOver(0)
}break;
case 13:this.rowOnMouseDown(this._highlightedId);
break;
case 9:this.hide();
break;
case 27:this.hide();
break
}if((A==8)||(A==32)||(A>=46)){this.setSearchTimeout(this.delayTime)
}}};
SearchSuggest.prototype.setSearchTimeout=function setSearchTimeout(C){if(!this._searchSuggestionFlag){return 
}var A=C||10;
var B=this;
clearTimeout(this.timeout);
this.timeout=setTimeout(function(){B.doSearch.call(B)
},A)
};
SearchSuggest.prototype.doSearch=function doSearch(){if(!this._searchSuggestionFlag){return 
}if(Trim(this._inputSearchText.value).length<this.startChar){this.hide();
return 
}var A=this._requestURL;
if(A.indexOf("?")>0){A+="&Name="+encodeURIComponent(Trim(this._inputSearchText.value))
}else{A+="?Name="+encodeURIComponent(Trim(this._inputSearchText.value))
}var B=new Date().getTime();
this._ajaxRequest=new AjaxRequest(A,GET_METHOD,this.suggestHandler,B,this);
this._ajaxRequest.setErrorHandler(this.suggestErrorHandler);
this._ajaxRequest.send()
};