(function(a){var b=[];a.fn.editableSelect=function(e){var g={bg_iframe:false,onSelect:false,items_then_scroll:10,case_sensitive:false};var f=a.extend(g,e);var d=false;a(this).each(function(){var h=b.length;if(a(this).data("editable-selecter")!==null){b[h]=new c(this,f);a(this).data("editable-selecter",h)}});return a(this)};a.fn.editableSelectInstances=function(){var d=[];a(this).each(function(){if(a(this).data("editable-selecter")!==null){d[d.length]=b[a(this).data("editable-selecter")]}});return d};var c=function(d,e){this.init(d,e)};c.prototype={settings:false,text:false,select:false,select_width:0,wrapper:false,list_item_height:20,list_height:0,list_is_visible:false,hide_on_blur_timeout:false,bg_iframe:false,current_value:"",init:function(d,f){this.settings=f;this.wrapper=a(document.createElement("div"));this.wrapper.addClass("editable-select-options");this.select=a(d);var e=this.select.attr("name");if(!e){e="editable-select"+b.length}var g=this.select.attr("id");if(!g){g="editable-select"+b.length}this.text=a('');this.text_submit=a('');this.text.attr("name",e+"_sele");this.text_submit.attr("name",e);this.text.data("editable-selecter",this.select.data("editable-selecter"));this.text_submit.data("editable-selecter",this.select.data("editable-selecter"));this.select.attr("disabled","disabled");this.text[0].className=this.select[0].className;this.text_submit[0].className=this.select[0].className;this.text.attr("id",g+"_sele");this.text_submit.attr("id",g);this.wrapper.attr("id",g+"_editable-select-options");this.text.attr("autocomplete","off");this.text.attr("autocomplete","off");this.text.addClass("editable-select");this.text_submit.addClass("editable-select");this.select.attr("id",g+"_hidden_select");this.select.attr("name",e+"_hidden_select");this.select.after(this.text);this.select.after(this.text_submit);if(this.select.css("display")=="none"){this.text_submit.css("display","none")}if(this.select.css("visibility")=="hidden"){this.text_submit.css("visibility","visibility")}this.select.css("visibility","hidden");this.select.hide();this.initInputEvents(this.text);this.duplicateOptions();this.setWidths();a(document.body).append(this.wrapper);if(this.settings.bg_iframe){this.createBackgroundIframe()}if(typeof this.settings.success=="function"){this.settings.success.call(this,this.text_submit[0])}},duplicateOptions:function(){var f=this,h,g;var d=a(document.createElement("ul"));this.wrapper.empty();this.wrapper.append(d);var e=this.select.find("option");this.dataList=[];e.each(function(k){h=a(this).text();g=a(this).val();if(a(this).attr("selected")){f.text.val(h);f.text_submit.val(g);f.current_value=h}if(f.trim(h)!=""){f.dataList.push(h)}var j=a('
  • '+h+"
  • ");j.hide();f.initListItemEvents(j);d.append(j)});this.setWidths();this.checkScroll()},in_array:function(f,d){for(i=0,len=d.length;ithis.settings.items_then_scroll){this.list_height=this.list_item_height*this.settings.items_then_scroll;this.wrapper.css("height",this.list_height+"px");this.wrapper.css("overflow","auto")}else{this.wrapper.css("height","auto");this.wrapper.css("overflow","visible")}},addOption:function(f,g){var d=a('
  • '+g+"
  • ");var e=a('");this.select.append(e);this.initListItemEvents(d);this.wrapper.find("ul").append(d);this.setWidths();this.checkScroll()},initInputEvents:function(e){var d=this;var f=false;a(document.body).click(function(){d.clearSelectedListItem();d.hideList()});e.blur(function(j){var k=d.trim(this.value);var g=d.in_array(k,d.dataList);if(k==""){d.text_submit.val("")}else{if(k!=""&&!g){d.text_submit.val("-1")}}var h=typeof d.settings.onSelect=="function"&&g?d.findItem(k):null;if(typeof d.settings.onSelect=="function"&&h!=null){d.text.val(h.text());d.text_submit.val(h.attr("value"));d.current_value=d.text.val();d.settings.onSelect.call(d,h,d.text_submit[0])}d.hideList();j.preventDefault();j.stopPropagation()});e.focus(function(g){d.showList();d.highlightSelected();g.stopPropagation()}).click(function(g){g.stopPropagation();d.showList();d.highlightSelected()}).keydown(function(g){switch(g.keyCode){case 40:if(!d.listIsVisible()){d.showList();d.highlightSelected()}else{g.preventDefault();d.selectNewListItem("down")}break;case 38:g.preventDefault();d.selectNewListItem("up");break;case 9:d.pickListItem(d.selectedListItem());break;case 27:g.preventDefault();d.hideList();return false;break;case 13:g.preventDefault();d.pickListItem(d.selectedListItem());return false}}).keyup(function(g){if(f!==false){clearTimeout(f);f=false}f=setTimeout(function(){if(d.text.val()!=d.current_value){d.current_value=d.text.val();d.highlightSelected()}},200);(g.keyCode==13)?d.hideList():d.showList();g.stopPropagation()}).keypress(function(g){if(g.keyCode==13){g.preventDefault();return false}})},initListItemEvents:function(d){var e=this;d.mouseover(function(){e.clearSelectedListItem();e.selectListItem(d)}).mousedown(function(f){f.stopPropagation();e.pickListItem(e.selectedListItem())})},selectNewListItem:function(f){var d=this.selectedListItem();if(!d.length){d=this.selectFirstListItem()}if(f=="down"){var e=this.selectNextItem(d)}else{var e=this.selectPrevItem(d)}if(e.length){this.selectListItem(e);this.scrollToListItem(e);this.unselectListItem(d)}},selectNextItem:function(d){var f=d.next();if(f&&f[0].display=="none"){return d}return f},selectPrevItem:function(d){var f=d.prev();if(f&&f[0].display=="none"){return d}return f},selectListItem:function(d){this.clearSelectedListItem();d.addClass("selected")},selectFirstListItem:function(){this.clearSelectedListItem();var d=this.wrapper.find("li:first");d.addClass("selected");return d},unselectListItem:function(d){d.removeClass("selected")},selectedListItem:function(){return this.wrapper.find("li.selected")},clearSelectedListItem:function(){this.wrapper.find("li.selected").removeClass("selected")},pickListItem:function(d){if(d.length){this.text.val(d.text());this.text_submit.val(d.attr("value"));this.current_value=this.text.val()}if(typeof this.settings.onSelect=="function"){this.settings.onSelect.call(this,d,this.text_submit[0])}this.hideList()},listIsVisible:function(){return this.list_is_visible},showList:function(){this.positionElements();this.setWidths();this.wrapper.show();this.hideOtherLists();this.list_is_visible=true;if(this.settings.bg_iframe){this.bg_iframe.show()}},findItem:function(j){var h=this;var f=h.trim(j);var d=h.wrapper.find("li");var g=false;var e=false;d.each(function(){var k=h.trim(a(this).text());if(!e){if(!h.settings.case_sensitive){k=k.toLowerCase()}if(k==f){e=true;g=a(this);return false}}});if(e){return g}else{if(!g&&!e){return null}}},highlightSelected:function(){var h=this;var f=h.trim(this.text.val());if(f.length<0){if(highlight_first){this.selectFirstListItem()}return}var d=this.wrapper.find("li");if(f.length==0){d.show();this.selectFirstListItem();return}if(!h.settings.case_sensitive){f=f.toLowerCase()}var g=false;var e=false;d.each(function(){var j=a(this).text();if(!e){if(!h.settings.case_sensitive){j=j.toLowerCase()}if(j==f){e=true;h.clearSelectedListItem();h.selectListItem(a(this));h.scrollToListItem(a(this))}else{if(j.search(f)>-1&&!g){g=a(this)}}}if(h.settings.isFilter&&j.search(f)>-1&&f!=""){a(this).show()}else{if(h.settings.isFilter){a(this).hide()}}});if(g&&!e){h.clearSelectedListItem();h.selectListItem(g);h.scrollToListItem(g)}else{if(!g&&!e){this.selectFirstListItem()}}},scrollToListItem:function(d){if(this.list_height){this.wrapper.scrollTop(d[0].offsetTop-(this.list_height/2))}},hideList:function(){this.wrapper.hide();this.list_is_visible=false;if(this.settings.bg_iframe){this.bg_iframe.hide()}},hideOtherLists:function(){for(var d=0;d