if(typeof searchSuggestionNames=='undefined'){searchSuggestionNames=[];}
function SearchSuggestions(idOfInput,rightAlign){searchSuggestionNames.push(this);eval(idOfInput+'_SS = this');this.inputBox=document.getElementById(idOfInput);this.rightAlign=rightAlign;this.inputBox.setAttribute('SSindex',searchSuggestionNames.length-1);this.ajaxer=new AJAXConnection();window.document.write('<div id="'+idOfInput+'Suggestions" class="searchSuggestions" style="display:none;position:absolute;z-index:40000;"></div>');this.divLayer=document.getElementById(idOfInput+'Suggestions');if(window.attachEvent){this.inputBox.attachEvent('onkeyup',this.fireSearchSuggestions);this.inputBox.attachEvent('onblur',this.fireCloseSearchSuggestions);}else if(window.addEventListener){this.inputBox.addEventListener('keyup',this.fireSearchSuggestions,true);this.inputBox.addEventListener('blur',this.fireCloseSearchSuggestions,true);}}
SearchSuggestions.prototype.fireCloseSearchSuggestions=function(event){if(typeof event.srcElement=="undefined"){var index=this.getAttribute('SSindex');}else{var index=event.srcElement.getAttribute('SSindex');}
setTimeout("searchSuggestionNames["+index+"].closeSearchSuggestions()",500);};SearchSuggestions.prototype.closeSearchSuggestions=function(){this.divLayer.style.display='none';};SearchSuggestions.prototype.fireSearchSuggestions=function(event){if(typeof event.srcElement=="undefined"){var index=this.getAttribute('SSindex');}else{var index=event.srcElement.getAttribute('SSindex');}
searchSuggestionNames[index].showSearchSuggestions();};SearchSuggestions.prototype.showSearchSuggestions=function(){if(this.inputBox.value.length>1){this.divLayer.style.display='';var offset=this.getOffset();this.divLayer.style.top=offset.bottom+"px";if(this.rightAlign){this.divLayer.style.left=offset.right-this.divLayer.offsetWidth+'px';}else{this.divLayer.style.left=offset.left+'px';}
this.ajaxSearchResults(this.inputBox.value);}else{this.closeSearchSuggestions();}};SearchSuggestions.prototype.getOffset=function(){var el=this.inputBox;var offset={top:0,left:0,right:el.offsetWidth,bottom:el.offsetHeight};while(el){offset.top+=el.offsetTop;offset.left+=el.offsetLeft;el=el.offsetParent;}
offset.bottom+=offset.top;offset.right+=offset.left;return offset;};SearchSuggestions.prototype.ajaxSearchResults=function(searchString){this.ajaxer.startDataDownload("/redirect.cfm?SearchSuggestions=1","searchString="+encodeURIComponent(searchString),this.fireSearchResultsComplete);};SearchSuggestions.prototype.fireSearchResultsComplete=function(downloadString){searchSuggestionNames[0].ajaxSearchResultsComplete(downloadString);};SearchSuggestions.prototype.ajaxSearchResultsComplete=function(downloadString){this.divLayer.innerHTML=downloadString;}
