window.droplistFilterCount=0;function addDroplistFilter(listID,maxFilters,override)
{if(maxFilters<=0){maxFilters=20;}
if(!window.droplistFilters){window.droplistFilters=new Array();var internetExplorer="pain"+"suffering";if(!internetExplorer){if(document.images){var imgDir='';for(var i=0;i<document.styleSheets.length;i++){if(document.styleSheets[i].href.match('DroplistFilter.css')){var dsStyleSheet=document.styleSheets[i];var cssPath=dsStyleSheet.href.replace(/\\/g,'/').replace(/\/[^\/]*\/?$/,'');var rules=dsStyleSheet.cssRules||dsStyleSheet.rules;for(var j=0;j<rules.length;j++){if(rules[j].selectorText=".dsFilterButton"){var regex=/url\(['"]?(.*)search.gif["']?\)/;var bgImage=regex.exec(rules[j].style.backgroundImage);if(bgImage){var bgImageDir=bgImage[1];if(bgImageDir.charAt(0)=='/'||bgImageDir.indexOf('://')!=-1){imgDir=bgImageDir;}else if(bgImageDir){imgDir=cssPath+'/'+bgImageDir;}else{imgDir=cssPath;}
if(imgDir.charAt(imgDir.length-1)!='/'){imgDir=imgDir+'/';}}
break;}}
break;}}
var pic1=new Image();pic1.src=imgDir+"search.gif";var pic2=new Image();pic2.src=imgDir+"searching.gif";var pic3=new Image();pic3.src=imgDir+"left.gif";var pic4=new Image();pic4.src=imgDir+"right.gif";var pic5=new Image();pic5.src=imgDir+"background.gif";window.droplistFilters.push(pic1);window.droplistFilters.push(pic2);window.droplistFilters.push(pic3);window.droplistFilters.push(pic4);window.droplistFilters.push(pic5);}}}
if(override!=true&&window.droplistFilterCount>maxFilters){if(window.droplistTimeout){clearTimeout(window.droplistTimeout);window.droplistTimeout=0;}
window.droplistTimeout=setTimeout("addDroplistFilter('"+listID+"', "+maxFilters+", true)",5000);}else{window.droplistFilters[listID]=new droplistFilter(listID);window.droplistTimeout=0;window.droplistFilterCount+=1;}}
function addListOption(droplist,option)
{try{droplist.add(option,null);}catch(e){droplist[droplist.length]=option;}}
function droplistFilter(listID)
{this.listID=listID;this.activateID=listID+"__dfActivate";this.containerID=listID+"__dfContainer";this.resetID=listID+"__dfReset";this.okID=listID+"__dfOK";this.textID=listID+"__dfText";var thisDF=this;var listControl=document.getElementById(listID);this.listInitialized=false;if(!droplistFilter.prototype.userAgent){var userAgent=navigator.userAgent;if(userAgent.match('Safari')){droplistFilter.prototype.userAgent='Safari';}else if(userAgent.match('MSIE')){droplistFilter.prototype.userAgent='MSIE';}else if(userAgent.match('Firefox/3')){droplistFilter.prototype.userAgent='Firefox3';}else if(userAgent.match('Gecko')){droplistFilter.prototype.userAgent='Gecko';}else{droplistFilter.prototype.userAgent='Other';}}
var elNobr=document.createElement('nobr');elNobr.style.whiteSpace="nowrap";var elActivate=document.createElement('div');elActivate.id=this.activateID;elActivate.className="dsFilterButton";if(this.userAgent=='Safari'){elActivate.style.display='inline-block';}else if(this.userAgent=='MSIE'){elActivate.style.display='inline';}else if(this.userAgent=='Firefox3'){elActivate.style.display='inline-block';}else if(this.userAgent=='Gecko'){elActivate.style.display='block';var elActivateContainer=document.createElement('div');elActivateContainer.style.display='-moz-inline-box';elActivateContainer.style.margin='0';elActivateContainer.style.padding='0';elActivateContainer.style.position='relative';elActivateContainer.style.top="-13px";elActivateContainer.appendChild(elActivate);elActivate=elActivateContainer;}else{elActivate.style.display='block';}
var elContainer=document.createElement('div');elContainer.className="dsOuterBox";elContainer.id=this.containerID;elContainer.style.display="none";elContainer.style.width="188px";var elInnerContainer=document.createElement('div');elInnerContainer.className="dsInnerBox";elInnerContainer.style.width="188px";elInnerContainer.style.display="block";elContainer.appendChild(elInnerContainer);var elTextbox=document.createElement('input');elTextbox.id=this.textID;elTextbox.name="";if(this.userAgent=='Safari'){elTextbox.className="dsFilterTextboxSafari";elTextbox.type="search";elInnerContainer.appendChild(elTextbox);}else{if(this.userAgent=='MSIE'){elTextbox.className="dsFilterTextboxIE";}else if(this.userAgent=='Firefox3'){elTextbox.type="textbox";elTextbox.className="dsFilterTextboxFF3";}else{elTextbox.type="textbox";elTextbox.className="dsFilterTextboxFF";}
var elTextDiv=document.createElement('div');elTextDiv.className="dsFilterTextdiv";elTextDiv.appendChild(elTextbox);var elTextLeft=document.createElement('div');elTextLeft.className="dsFilterTextLeft";var elTextRight=document.createElement('div');elTextRight.className="dsFilterTextRight";elInnerContainer.appendChild(elTextLeft);elInnerContainer.appendChild(elTextDiv);elInnerContainer.appendChild(elTextRight);}
var elOK=document.createElement('div');elOK.id=this.okID;elOK.className="dsFilterButton2 dsFilterOK";var elReset=document.createElement('div');elReset.id=this.resetID;elReset.className="dsFilterButton2 dsFilterReset";elInnerContainer.appendChild(elOK);elInnerContainer.appendChild(elReset);elNobr.appendChild(elActivate);var listParent=listControl.parentNode;if(listControl.nextSibling){var sibling=listControl.nextSibling;listParent.removeChild(listControl);elNobr.insertBefore(listControl,elActivate);listParent.insertBefore(elContainer,sibling);listParent.insertBefore(elNobr,elContainer);}else{listParent.removeChild(listControl);elNobr.insertBefore(listControl,elActivate);listParent.appendChild(elNobr);listParent.appendChild(elContainer);}
document.getElementById(this.activateID).onmousedown=function(e){if(!thisDF.listInitialized){thisDF.saveListItems();thisDF.listInitialized=true;document.getElementById(thisDF.okID).onclick=function(e){return droplistFilter.prototype.event_ok(e,thisDF);}
document.getElementById(thisDF.resetID).onclick=function(e){return droplistFilter.prototype.event_reset(e,thisDF);}
document.getElementById(thisDF.textID).onkeypress=function(e){return droplistFilter.prototype.event_keypress(e,thisDF);}}
return droplistFilter.prototype.event_activate(e,thisDF);}}
droplistFilter.prototype.saveListOption=function(option)
{if(option.value!='-'){this.oldOptions.push(option);}else{this.listDash=true;}}
droplistFilter.prototype.saveListItems=function()
{var listControl=document.getElementById(this.listID);var length=listControl.options.length;this.listWidth=listControl.offsetWidth;this.listKey='';this.listKey=this.listKey+length+'__';if(length>0){this.listKey=this.listKey+listControl.options[length-1].text;if(length>1){var i=1;}else{var i=0;}
this.listKey=this.listKey+'__'+listControl.options[i].value;}
if(!window.droplistCache){window.droplistCache=new Object();window.droplistDash=new Object();}
if(window.droplistCache[this.listKey]){this.oldOptions=window.droplistCache[this.listKey];this.listDash=window.droplistDash[this.listKey];}
else{this.oldOptions=new Array();for(var i=0;i<listControl.options.length;i++){var thisOption=listControl.options[i];var savedOption=new Object();savedOption.text=thisOption.text;savedOption.value=thisOption.value;savedOption.title=thisOption.title;savedOption.style=thisOption.style;this.saveListOption(savedOption);}
window.droplistCache[this.listKey]=this.oldOptions;window.droplistDash[this.listKey]=this.listDash;}
this.oldSelection=listControl.selectedIndex;if(!this.listDash){this.oldSelection+=1;}}
droplistFilter.prototype.filterListOptions=function(filterString)
{var listControl=document.getElementById(this.listID);var newListControl=listControl.cloneNode(false);var listParent=listControl.parentNode;if(listControl.onchange){newListControl.onchange=listControl.onchange;}
if(listControl.onclick){newListControl.onlcick=listControl.onclick;}
if(filterString.toLowerCase){filterString=filterString.toLowerCase();}
var optionString;if(filterString.toLowerCase&&filterString!=''){optionString='-- '+filterString+' --';}else{optionString='-';}
var blankOption=new Option(optionString,'-');addListOption(newListControl,blankOption);for(i=0;i<this.oldOptions.length;i++){if(filterString==-1||this.oldOptions[i].text.toLowerCase().match(filterString))
{var clonedOption=new Option(this.oldOptions[i].text,this.oldOptions[i].value);for(var attr in this.oldOptions[i].style){if(this.oldOptions[i].style[attr]){try{clonedOption.style[attr]=this.oldOptions[i].style[attr];}catch(e){}}}
addListOption(newListControl,clonedOption);}}
if(filterString==-1){newListControl.selectedIndex=this.oldSelection;}else{newListControl.selectedIndex=0;}
if(listParent.replaceChild){listParent.replaceChild(newListControl,listControl);if(newListControl.offsetWidth<this.listWidth){newListControl.style.width=''+this.listWidth+'px';}}else{alert("Please use Firefox");}}
droplistFilter.prototype.event_activate=function(e,thisDF){var popupBox=document.getElementById(thisDF.containerID);if(popupBox.style.display=="none"){thisDF.filterPopup();}else{thisDF.filterPopup(true);}};droplistFilter.prototype.event_reset=function(e,classObject){if(classObject&&classObject.listID){thisDF=classObject;}
thisDF.filterListOptions(-1);document.getElementById(thisDF.textID).value='';thisDF.filterPopup(true);if(!e)var e=window.event;e.cancelBubble=true;if(e.stopPropogation)e.stopPropogation();return false;}
droplistFilter.prototype.event_keypress=function(e,thisDF){var keynum=0;if(!e)var e=window.event;if(e.keyCode)keynum=e.keyCode;else if(e.which)keynum=e.which;if(keynum==13||keynum==10||keynum==3){thisDF.event_ok(e,thisDF);e.cancelBubble=true;if(e.stopPropogation)e.stopPropogation();return false;}else if(keynum==27){thisDF.event_reset(e,thisDF);e.cancelBubble=true;if(e.stopPropogation)e.stopPropogation();return false;}else{return true;}};droplistFilter.prototype.event_ok=function(e,classObject){if(classObject&&classObject.listID){thisDF=classObject;}
var filterTextbox=document.getElementById(thisDF.textID);thisDF.filterListOptions(filterTextbox.value);thisDF.filterPopup(true);if(!e)var e=window.event;e.cancelBubble=true;if(e.stopPropogation)e.stopPropogation();return false;}
droplistFilter.prototype.filterPopup=function(hide)
{var droplist=document.getElementById(this.listID);var mainButton=document.getElementById(this.activateID);var popupBox=document.getElementById(this.containerID);mainButton.blur();if(droplist.offsetWidth<this.listWidth){droplist.style.width=''+this.listWidth+'px';}
if(hide){popupBox.style.display="none";droplist.style.display="inline";if(this.userAgent=='Safari'){mainButton.style.display="inline-block";}else if(this.userAgent=='MSIE'){mainButton.style.display="inline";}else if(this.userAgent=='Firefox3'){mainButton.style.display="inline-block";}else if(this.userAgent=='Gecko'){mainButton.style.display="block";}else{mainButton.style.display="block";}}else{var listWidth;if(this.listWidth<=0){this.listWidth=droplist.offsetWidth;}
listWidth=this.listWidth+27;droplist.style.display="none";mainButton.style.display="none";if(this.userAgent=='Safari'){popupBox.style.display="inline-block";}else if(this.userAgent=='MSIE'){popupBox.style.display="inline-block";}else if(this.userAgent=='Firefox3'){popupBox.style.display="inline-block";}else if(this.userAgent=='Gecko'){popupBox.style.display="-moz-inline-box";}else{popupBox.style.display="block";}
if(listWidth>popupBox.offsetWidth){popupBox.style.width=''+listWidth+'px';popupBox.childNodes[0].style.width=''+listWidth+'px';}
setTimeout("var optText = document.getElementById( '"+this.textID+"' ); "+"optText.select(); "+"optText.focus(); ",10);}}
