1Elements.implement({chosen:function(e,s){return this.each(function(t){if(!t.hasClass("chzn-done"))return new Chosen(t,e,s)})}});var Chosen=new Class({active_field:!1,mouse_on_container:!1,results_showing:!1,result_highlighted:null,result_single_selected:null,choices:0,initialize:function(t){this.click_test_action=this.test_active_click.bind(this),this.form_field=t,this.is_multiple=this.form_field.multiple,this.is_rtl=this.form_field.hasClass("chzn-rtl"),this.set_up_html(),this.register_observers()},set_up_html:function(){var t;this.form_field.id||(this.form_field.id=String.uniqueID()),this.container_id=this.form_field.id.replace(/(:|\.)/g,"_")+"_chzn",this.default_text=this.form_field.get("data-placeholder")?this.form_field.get("data-placeholder"):Locale.get("Chosen.placeholder",this.form_field.multiple),this.container=new Element("div",{id:this.container_id,class:"chzn-container"+(this.is_rtl?" chzn-rtl":"")+" chzn-container-"+(this.is_multiple?"multi":"single")}).addClass(this.form_field.get("class")).setStyles({padding:"0",border:"none"}),(t=this.form_field.get("style"))&&t.test("(^width|[^-]width)")&&this.container.setStyle("width",this.form_field.getStyle("width")),this.is_multiple?this.container.set("html",'<ul class="chzn-choices"><li class="search-field"><input type="text" value="'+this.default_text+'" class="default" autocomplete="off" style="width:25px;" /></li></ul><div class="chzn-drop" style="left:-9000px;"><ul class="chzn-results"></ul></div>'):this.container.set("html",'<a href="javascript:void(0)" class="chzn-single"><span>'+this.default_text+'</span><div><b></b></div></a><div class="chzn-drop" style="left:-9000px;"><div class="chzn-search"><input type="text" autocomplete="off" /></div><ul class="chzn-results"></ul></div>'),this.form_field.setStyle("display","none").removeProperty("required").grab(this.container,"after"),this.dropdown=this.container.getElement("div.chzn-drop"),this.dropdown.setStyles({top:"10",width:"100%"}),this.search_field=this.container.getElement("input"),this.search_results=this.container.getElement("ul.chzn-results"),this.is_multiple?(this.search_choices=this.container.getElement("ul.chzn-choices"),this.search_container=this.container.getElement("li.search-field")):(this.search_container=this.container.getElement("div.chzn-search"),this.selected_item=this.container.getElement(".chzn-single"),this.search_field.setStyle("width","100%")),this.results_build(),this.set_tab_index()},register_observers:function(){this.container.addEvents({click:this.container_click.bind(this),mouseenter:this.mouse_enter.bind(this),mouseleave:this.mouse_leave.bind(this)}),this.search_results.addEvents({click:this.search_results_click.bind(this),mouseover:this.search_results_mouseover.bind(this),mouseout:this.search_results_mouseout.bind(this)}),this.form_field.addEvent("liszt:updated",this.results_update_field.bind(this)),this.search_field.addEvents({blur:this.input_blur.bind(this),keyup:this.keyup_checker.bind(this),keydown:this.keydown_checker.bind(this)}),this.is_multiple?(this.search_choices.addEvent("click",this.choices_click.bind(this)),this.search_field.addEvent("focus",this.input_focus.bind(this))):this.selected_item.addEvent("focus",this.activate_field.bind(this))}
1,container_click:function(t){t&&"click"===t.type&&t.stopPropagation(),this.pending_destroy_click?this.pending_destroy_click=!1:(this.active_field?this.is_multiple||!t||t.target!==this.selected_item&&!t.target.getParents("a.chzn-single").length||(t.preventDefault(),this.results_toggle()):(this.is_multiple&&(this.search_field.value=""),document.addEvent("click",this.click_test_action),this.results_show()),this.activate_field())},mouse_enter:function(){this.mouse_on_container=!0},mouse_leave:function(){this.mouse_on_container=!1},input_focus:function(){this.active_field||setTimeout(this.container_click.bind(this),50)},input_blur:function(){this.mouse_on_container||(this.active_field=!1,setTimeout(this.blur_test.bind(this),100))},blur_test:function(){!this.active_field&&this.container.hasClass("chzn-container-active")&&this.close_field()},close_field:function(){document.removeEvent("click",this.click_test_action),this.is_multiple||(this.selected_item.set("tabindex",this.search_field.get("tabindex")),this.search_field.set("tabindex",-1)),this.active_field=!1,this.results_hide(),this.container.removeClass("chzn-container-active"),this.winnow_results_clear(),this.clear_backstroke(),this.show_search_field_default(),this.search_field_scale()},activate_field:function(){this.is_multiple||this.active_field||(this.search_field.set("tabindex",this.selected_item.get("tabindex")),this.selected_item.set("tabindex",-1)),this.container.addClass("chzn-container-active"),this.active_field=!0,this.search_field.set("value",this.search_field.get("value")),this.search_field.focus()},test_active_click:function(t){t.target.getParents("#"+this.container_id).length?this.active_field=!0:this.close_field()},results_build:function(){this.parsing=!0,this.results_data=this.form_field.select_to_array(),this.is_multiple&&0<this.choices?(this.search_choices.getElements("li.search-choice").destroy(),this.choices=0):this.is_multiple||this.selected_item.getElements("span").set("text",this.default_text);var e="";this.results_data.each(function(t){t.group?e+=this.result_add_group(t):t.empty||(e+=this.result_add_option(t),t.selected&&this.is_multiple?this.choice_build(t):t.selected&&!this.is_multiple&&(this.selected_item.getElements("span").set("text",t.text),this.selected_item.getElements("span").set("html",t.html)))},this),this.show_search_field_default(),this.search_field_scale(),this.search_results.set("html",e),this.parsing=!1},result_add_group:function(t){return t.disabled?"":(t.dom_id=this.container_id+"_g_"+t.array_index,'<li id="'+t.dom_id+'" class="group-result"><div>'+t.label+"</div></li>")},result_add_option:function(t){var e;return t.disabled?"":(t.dom_id=this.container_id+"_o_"+t.array_index,e=t.selected&&this.is_multiple?[]:["active-result"],t.selected&&e.push("result-selected"),null!=t.group_array_index&&e.push("group-option"),'<li id="'+t.dom_id+'" class="'+e.join(" ")+'"><div>'+t.html+"</div></li>")},results_update_field:function(){this.result_clear_highlight(),this.result_single_selected=null,this.results_build()},result_do_highlight:function(t){var e,s,i;t&&(this.result_clear_highlight(),this.result_highlight=t,this.result_highlight.addClass("highlighted"),(t=parseInt(this.search_results.getStyle("maxHeight"),10))+(i=this.search_results.getScroll().y)<=(e=(s=this.result_highlight.getPosition(this.search_results).y+this.search_results.getScroll().y)+this.result_highlight.getCoordinates().height)?this.search_results.scrollTo(0,0<e-t?e-t:0):s<i&&this.search_results.scrollTo(0,s))},result_clear_highlight:function(){this.result_highlight&&this.result_highlight.removeClass("highlighted"),this.result_highlight=null},results_toggle:function(){this.results_showing?this.results_hide():this.results_show()},results_show:function(){var t;this.is_multiple||(this.selected_item.addClass("chzn-single-with-drop"),this.result_single_selected&&this.result_do_highlight(this.result_single_selected)),t=this.is_multiple?this.container.getCoordinates().height:this.container.getCoordinates().height-1,this.dropdown.setStyles({top:t,left:0}),this.results_showing=!0,this.search_field.focus(),this.search_field.set("value",this.search_field.get("value")),this.winnow_results()},results_hide:function(){this.is_multiple||this.selected_item.removeClass("chzn-single-with-drop"),this.result_clear_highlight(),this.dropdown.setStyle("left",-9e3),this.results_showing=!1},set_tab_index:function(){var t;this.form_field.get("tabindex")&&(t=this.form_field.get("tabindex"),this.form_field.set("tabindex",-1),this.is_multiple?this.search_field.set("tabindex",t):(this.selected_item.set("tabindex",t),this.search_field.set("tabindex",-1)))},show_search_field_default:function(){this.is_multiple&&this.choices<1&&!this.active_field?(this.search_field.set("value",this.default_text),this.search_field.addClass("default")):(this.search_field.set("value",""),this.search_field.removeClass("default"))},search_results_click:function(t){var e=t.target.hasClass("active-result")?t.target:t.target.getParent(".active-result");e&&(this.result_highlight=e,this.result_select(t))},search_results_mouseover:function(t){t=t.target.hasClass("active-result")?t.target:t.target.getParent(".active-result");t&&this.result_do_highlight(t)},search_results_mouseout:function(t){(t.target.hasClass("active-result")||t.target.getParent(".active-result"))&&this.result_clear_highlight()},choices_click:function(t){t.preventDefault(),!this.active_field||t.target.hasClass("search-choice")||t.target.getParent(".search-choice")||this.results_showing||this.results_show()},choice_build:function(t){var e=this.container_id+"_c_"+t.array_index,t=(this.choices+=1,new Element("li",{id:e}).addClass("search-choice").set("html","<span>"+t.html+'</span><a href="#" class="search-choice-close" rel="'+t.array_index+'">â</a>'));this.search_container.grab(t,"before"),document.id(e).getElement("a").addEvent("click",this.choice_destroy_link_click.bind(this))},choice_destroy_link_click:function(t){t.preventDefault(),this.pending_destroy_click=!0,this.choice_destroy(t.target)},choice_destroy:function(t){--this.choices,this.show_search_field_default(),this.is_multiple&&0<this.choices&&this.search_field.value.length<1&&this.results_hide(),this.result_deselect(t.get("rel")),t.getParent("li").destroy()},result_select:function(t){var e,s;this.result_highlight&&(e=(s=this.result_highlight).get("id"),this.result_clear_highlight(),s.addClass("result-selected"),this.is_multiple?this.result_deactivate(s):this.result_single_selected=s,s=e.substr(e.lastIndexOf("_")+1),(e=this.results_data[s]).selected=!0,this.form_field.options[e.options_index].selected=!0,this.is_multiple?this.choice_build(e):this.selected_item.getElement("span").set("text",e.text),this.is_multiple&&t.control||this.results_hide(),this.search_field.set("value",""),this.form_field.fireEvent("change"),this.form_field.dispatchEvent(new Event("change")),this.search_field_scale())},result_activate:function(t){t.addClass("active-result").setStyle("display","block")},result_deactivate:function(t){t.removeClass("active-result").setStyle("display","none")},result_deselect:function(t){var e=this.results_data[t];
1e.selected=!1,this.form_field.options[e.options_index].selected=!1,document.id(this.container_id+"_o_"+t).removeClass("result-selected").addClass("active-result").setStyle("display","block"),this.result_clear_highlight(),this.winnow_results(),this.form_field.fireEvent("change"),this.search_field_scale()},results_search:function(){this.results_showing?this.winnow_results():this.results_show()},winnow_results:function(){var e,s,i,h,t,l;this.no_results_clear(),h=0,t=this.search_field.get("value")===this.default_text?"":new Element("div",{text:this.search_field.get("value").trim()}).get("html"),s=new RegExp(t.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),"i"),this.results_data.each(function(t){t.disabled||t.empty||(t.group?document.id(t.dom_id).setStyle("display","none"):this.is_multiple&&t.selected||(e=!1,i=t.dom_id,s.test(t.text)?(e=!0,h+=1):(0<=t.text.indexOf(" ")||0===t.text.indexOf("["))&&(l=t.text.replace(/\[|\]/g,"").split(" ")).length&&l.each(function(t){s.test(t)&&(e=!0,h+=1)}),e?(l=t.html,document.id(i).get("html")!==l&&document.id(i).set("html",l),this.result_activate(document.id(i)),null!=t.group_array_index&&document.id(this.results_data[t.group_array_index].dom_id).setStyle("display","block")):(this.result_highlight&&i===this.result_highlight.get("id")&&this.result_clear_highlight(),this.result_deactivate(document.id(i)))))},this),h<1&&t.length?this.no_results(t):this.winnow_results_set_highlight()},winnow_results_clear:function(){this.search_field.set("value",""),this.search_results.getElements("li").each(function(t){t.hasClass("group-result")?t.setStyle("display","block"):this.is_multiple&&t.hasClass("result-selected")||this.result_activate(t)},this)},winnow_results_set_highlight:function(){var t;this.result_highlight||null!=(t=(t=this.is_multiple?[]:this.search_results.getElements(".result-selected")).length?t[0]:this.search_results.getElement(".active-result"))&&this.result_do_highlight(t)},no_results:function(t){var e=new Element("li",{class:"no-results"}).set("html",Locale.get("Chosen.noResults")+' "<span></span>"');e.getElement("span").set("html",t),this.search_results.grab(e)},no_results_clear:function(){this.search_results.getElements(".no-results").destroy()},keydown_arrow:function(){var t;this.result_highlight?this.results_showing&&(t=this.result_highlight.getNext("li.active-result"))&&this.result_do_highlight(t):(t=this.search_results.getElement("li.active-result"))&&this.result_do_highlight(t),this.results_showing||this.results_show()},keyup_arrow:function(){var t;this.results_showing||this.is_multiple?this.result_highlight&&((t=this.result_highlight.getAllPrevious("li.active-result")).length?this.result_do_highlight(t[0]):(0<this.choices&&this.results_hide(),this.result_clear_highlight())):this.results_show()},keydown_backstroke:function(){this.pending_backstroke?(this.choice_destroy(this.pending_backstroke.getElement("a")),this.clear_backstroke()):(this.pending_backstroke=this.search_choices.getLast("li.search-choice"),this.pending_backstroke.addClass("search-choice-focus"))},clear_backstroke:function(){this.pending_backstroke&&this.pending_backstroke.removeClass("search-choice-focus"),this.pending_backstroke=null},keyup_checker:function(t){switch(this.search_field_scale(),t.key){case"backspace":this.is_multiple&&this.backstroke_length<1&&0<this.choices?this.keydown_backstroke():this.pending_backstroke||(this.result_clear_highlight(),this.results_search());break;case"enter":t.preventDefault(),this.results_showing&&this.result_select(t);break;case"esc":this.results_showing&&this.results_hide();break;case"tab":case"up":case"down":case"shift":case"ctrl":break;default:this.results_search()}},keydown_checker:function(t){switch(this.search_field_scale(),"backspace"!==t.key&&this.pending_backstroke&&this.clear_backstroke(),t.key){case"backspace":this.backstroke_length=this.search_field.value.length;break;case"tab":this.mouse_on_container=!1;break;case"enter":t.preventDefault();break;case"up":t.preventDefault(),this.keyup_arrow();break;case"down":this.keydown_arrow()}},search_field_scale:function(){var t,e,s;this.is_multiple&&(s=0,t={position:"absolute",visibility:"hidden"},e=this.search_field.getStyles("font-size","font-style","font-weight","font-family","line-height","text-transform","letter-spacing"),Object.merge(t,e),(e=new Element("div",{styles:t})).set("text",this.search_field.get("value")),$(document.body).grab(e),s=e.getCoordinates().width+25,e.destroy(),s>this.f_width-10&&(s=this.f_width-10),this.search_field.setStyle("width",s),t=this.container.getCoordinates().height,this.dropdown.setStyle("top",t))}}),SelectParser=(Element.implement({get_side_border_padding:function(){var t=this.getStyles("padding-left","padding-right","border-left-width","border-right-width"),t=Object.filter(t,function(t){return"string"==typeof t}),t=Object.map(t,function(t){return t.toInt()}),e=Object.values(t),s=0,i=e.length;if(i)for(;i--;)s+=e[i];return s},select_to_array:function(){var e=new SelectParser;return this.getChildren().each(function(t){e.add_node(t)}),e.parsed}}),new Class({options_index:0,parsed:[],add_node:function(t){"OPTGROUP"===t.nodeName.toUpperCase()?this.add_group(t):this.add_option(t)},add_group:function(e){var s=this.parsed.length;this.parsed.push({array_index:s,group:!0,label:e.label,children:0,disabled:e.disabled}),e.getChildren().each(function(t){this.add_option(t,s,e.disabled)},this)},add_option:function(t,e,s){var i,h;"OPTION"===t.nodeName.toUpperCase()&&(""!==t.text?(null!=e&&(this.parsed[e].children+=1),-1!=(h=(i=t.get("html")).lastIndexOf("["))&&(i=i.substr(0,h)+'<span class="label-info">'+i.substr(h,i.length)+"</span>"),this.parsed.push({array_index:this.parsed.length,options_index:this.options_index,value:t.get("value"),text:t.get("text").trim(),html:i,selected:t.selected,disabled:!0===s?s:t.disabled,group_array_index:e})):this.parsed.push({array_index:this.parsed.length,options_index:this.options_index,empty:!0}),this.options_index+=1)}}));
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.