var searchforms=new Array();var timeoutId=0;var resultCache=new Object();var keycode=0;var httpRequest=null;var currentfid;var enter=false;function SearchForm(b,d,a){this.site=b;this.id=d;this.suggestdiv=a;var c=document.getElementById(d);this.inputfield=c.q;this.inputfield.autoComplete="off";this.rows=0;this.rowDivList=null;this.highlightedSuggestionIndex=-1;this.highlightedSuggestionDiv=null;this.keywords=new Array(10);this.keywordsText=new Array(10);this.cursorUpDownPressed=false;this.currentInputFieldValue="";this.partialquery="";this.currentKeyword="";this.currentKeywordText="";this.keycode=0;if(this.inputfield.addEventListener){this.inputfield.addEventListener("keypress",KeyPress,true)}}function InitForm(b,d,a){var c=new SearchForm(b,d,a);searchforms[d]=c}function KeyDown(b,a){if(!a&&window.event){a=window.event}if(timeoutId){return}keycode=a.keyCode;if(isCtrlKey(keycode)){return true}if(isSendKey(keycode,b)){timeoutId=setTimeout("SendQuery('"+b+"')",150)}return UpDown(b,keycode)}function KeyPress(a){if(a.which==0&&!isShowKey(keycode)){if(a.preventDefault){a.preventDefault()}return false}}UpDown=function(c,a){var b=searchforms[c].inputfield;var d=b.value;searchforms[c].keycode=a;if(handleCursorUpDownEnter(a,c,d)||isShowKey(a)){return true}else{return false}};function handleCursorUpDownEnter(c,d,e){var b=searchforms[d].highlightedSuggestionIndex;var a=document.getElementById(searchforms[d].suggestdiv);if(c==33){if(a.style.visibility=="visible"){setStyleForElement(searchforms[d].highlightedSuggestionDiv,"normal");searchforms[d].highlightedSuggestionIndex=0;highlightNewValue(d,0)}return false}else{if(c==34){if(a.style.visibility=="visible"){setStyleForElement(searchforms[d].highlightedSuggestionDiv,"normal");searchforms[d].highlightedSuggestionIndex=searchforms[d].rows-1;highlightNewValue(d,searchforms[d].rows-1)}return false}else{if(c==40){if(a.style.visibility=="visible"){highlightNewValue(d,b+1);return false}}else{if(c==38){if(a.style.visibility=="visible"){highlightNewValue(d,b-1);return false}}else{if(c==13||c==3){if(c==13){enter=true;setLocation(d);return true}return false}}}}}if(keycode!=0){ForEachKeyPressed(e,d)}return true}function highlightNewValue(c,b){searchforms[c].currentInputFieldValue=searchforms[c].partialquery;if(!searchforms[c].rowDivList){return}ShowDiv(c);if(b>=searchforms[c].rows){b=searchforms[c].rows-1;searchforms[c].highlightedSuggestionDiv=searchforms[c].rowDivList.item(b)}if(b<0){b=-1;searchforms[c].highlightedSuggestionIndex=-1;searchforms[c].highlightedSuggestionDiv=null;setStyleForElement(searchforms[c].rowDivList.item(0),"normal")}if(searchforms[c].highlightedSuggestionIndex!=-1&&b!=searchforms[c].highlightedSuggestionIndex){setStyleForElement(searchforms[c].highlightedSuggestionDiv,"normal");searchforms[c].highlightedSuggestionIndex=-1}if(b>=0){searchforms[c].highlightedSuggestionIndex=b;searchforms[c].highlightedSuggestionDiv=searchforms[c].rowDivList.item(b);setStyleForElement(searchforms[c].highlightedSuggestionDiv,"hilight");currentInputFieldValue=searchforms[c].partialquery;var a=valueOfSuggestdiv(searchforms[c].highlightedSuggestionDiv);searchforms[c].currentKeyword=searchforms[c].keywords[b];searchforms[c].currentKeywordText=searchforms[c].keywordsText[b]}else{searchforms[c].currentKeyword="";searchforms[c].currentKeywordText=""}}function ForEachKeyPressed(e,d){var c=searchforms[d].inputfield;var b=searchforms[d].suggestdiv;var b=document.getElementById(b);var g=searchforms[d].highlightedSuggestionIndex;var j=b.getElementsByTagName("LI");var l=j.length;searchforms[d].rows=l;searchforms[d].rowDivList=j;searchforms[d].partialquery=e;searchforms[d].currentKeyword="";searchforms[d].currentKeywordText="";var m=c.value;if(m==""||l==0||keycode==27||m.search(/\S/)==-1||(b.style.visibility=="hidden"&&(keycode==35||keycode==36))){HideDiv(d)}for(var h=0;h<l;h++){setStyleForElement(j.item(h),"normal")}var a=searchforms[d].highlightedSuggestionDiv;var k=false;switch(searchforms[d].keycode){case 8:case 33:case 34:case 35:case 36:case 37:case 39:case 45:case 46:k=true;break;default:break}if(!k&&a){setStyleForElement(a,"hilight");var i;i=valueOfSuggestdiv(a);if(i!=c.value){if(c.value!=e){return}}}else{g=-1}}function valueOfSuggestdiv(a){if(!a){return null}return findSpanValueForClass(a,"5")}function findSpanValueForClass(b,a){var g=b.getElementsByTagName("span");if(g){for(var d=0;d<g.length;++d){if(g[d].className==a){var c=g[d].innerHTML;if(c=="&nbsp;"){return""}else{var e=stripCRFromString(c);return e}}}}else{return""}}function stripCRFromString(c){for(var d=0,b="",a="\n\r";d<c.length;d++){if(a.indexOf(c.charAt(d))==-1){b+=c.charAt(d)}else{b+=" "}}return b}function setLocation(a){if(searchforms[a].currentKeywordText){searchforms[a].inputfield.value=searchforms[a].currentKeywordText}document.getElementById(a).submit()}function SendQuery(e){timeoutId=0;var a=searchforms[e].suggestdiv;var h=searchforms[e].inputfield;var g=h.value;if(g.length>2&&g.search(/\S/)!=-1){var j=document.getElementsByName("include");var c="";for(var f=0;f<j.length;f++){if(j[f].checked){c=j[f].value;break}}var k=resultCache[g+c];if(k){ShowDiv(a);startswithResult(g,c,k[0],k[1],k[2],e)}else{var d=(new Date()).getTime()%1000000000;var b="cgi/search.cgi?site="+searchforms[e].site+";suggest=1;q="+encodeURIComponent(g)+";include="+encodeURIComponent(c)+";ord="+d;if(httpRequest){httpRequest.abort()}httpRequest=(!window.XMLHttpRequest)?(ActiveXObject?(new ActiveXObject("Microsoft.XMLHTTP")):""):(new XMLHttpRequest());httpRequest.open("GET",b,true);httpRequest.onreadystatechange=new Function("Process('"+e+"')");httpRequest.send(null)}}else{HideDiv(e)}}function Process(fid){if(httpRequest.readyState==4){try{if(httpRequest.status==200){if(httpRequest.responseText==""){HideDiv(fid)}else{eval("startswithResult("+httpRequest.responseText+'"'+fid+'");')}}}catch(e){}}}function ShowDiv(c){if(searchforms[c]){var a=searchforms[c].inputfield.offsetLeft;var d=searchforms[c].inputfield.offsetTop+searchforms[c].inputfield.offsetHeight;var b=document.getElementById(searchforms[c].suggestdiv);b.style.left=a+"px";b.style.top=d+"px";b.style.visibility="visible"}}function HideDiv(a){if(searchforms[a]){document.getElementById(searchforms[a].suggestdiv).style.visibility="hidden"}}function onBlurHandler(b,a){if(!a&&window.event){a=window.event}setTimeout("HideDiv('"+b+"')",300)}startswithResult=function(f,a,d,c,b,e){resultCache[f+a]=new Array(d,c,b);searchforms[e].keywords=b;searchforms[e].keywordsText=d;if(d.length==0){HideDiv(e);searchforms[e].rows=0;searchforms[e].rowDivList=null}else{ShowDiv(e);searchforms[e].highlightedSuggestionIndex=-1;displayFoundList(d,c,e);ForEachKeyPressed(f,e)}};function displayFoundList(a,i,g){var b=searchforms[g].suggestdiv;var b=document.getElementById(b);while(b.childNodes.length>0){b.removeChild(b.childNodes[0])}if(a.length!=0){var e=document.createElement("DIV");var h=document.createElement("UL");currentfid=g;for(var j=0;j<a.length;++j){var l=document.createElement("LI");setStyleForElement(l,"normal");l.onmouseover=new Function("mover('"+g+"',"+j+")");l.onmouseout=new Function("mout('"+g+"')");if(typeof(document.addEventListener)!="undefined"){l.addEventListener("mousedown",mdown,false)}else{l.onmousedown=mdown}var c=document.createElement("SPAN");l.displaySpan=c;var k=a[j];var d="";if(i[j].length>0){d=" <span class='numresults'>"+i[j]+"</span>"}c.innerHTML="<span class='keywordtext'>"+k+"</span>"+d;l.appendChild(c);h.appendChild(l)}e.appendChild(h);b.appendChild(e)}}var mdown=function(a){if(isLeftButton(a)){setLocation(currentfid)}};var mover=function(c,b){if(searchforms[c].highlightedSuggestionIndex!=-1&&b!=searchforms[c].highlightedSuggestionIndex){setStyleForElement(searchforms[c].highlightedSuggestionDiv,"normal");searchforms[c].highlightedSuggestionIndex=-1}var a=searchforms[c].suggestdiv;var a=document.getElementById(a);J=a.getElementsByTagName("LI");searchforms[c].highlightedSuggestionIndex=b;searchforms[c].rowDivList=J;searchforms[c].highlightedSuggestionDiv=searchforms[c].rowDivList.item(b);searchforms[c].currentKeyword=searchforms[c].keywords[b];searchforms[c].currentKeywordText=searchforms[c].keywordsText[b];setStyleForElement(searchforms[c].highlightedSuggestionDiv,"hilight")};var mout=function(a){searchforms[a].currentKeyword="";searchforms[a].currentKeywordText="";setStyleForElement(searchforms[a].highlightedSuggestionDiv,"normal")};function setStyleForElement(b,a){if(b!=null&&typeof(b)!="undefined"){b.className=a}}function isSendKey(a,d){var c=true;switch(a){case 10:case 11:case 12:case 13:case 27:case 33:case 34:case 35:case 36:case 38:case 40:case 37:case 39:var b=document.getElementById(searchforms[d].suggestdiv);if(b.style.visibility=="hidden"){return c}case 45:c=false;break;default:break}return c}function isShowKey(a){if(a==40||a==38||a==33||a==34||a==13){return false}else{return true}}function isCtrlKey(a){if(a==16||a==17||a==18){return true}else{return false}}function isLeftButton(b){var a;if(!b){var b=window.event}if(b.which){a=(b.which==1)}else{if(b.button){a=(b.button==0||b.button==1)}}return a};