(function($){$.expr[":"].icontains=function(obj,index,meta){return icontains($(obj).text(),meta[3]);
};
$.expr[":"].aicontains=function(obj,index,meta){return icontains($(obj).data("normalizedText")||$(obj).text(),meta[3]);
};
function icontains(haystack,needle){return haystack.toUpperCase().indexOf(needle.toUpperCase())>-1;
}function normalizeToBase(text){var rExps=[{re:/[\xC0-\xC6]/g,ch:"A"},{re:/[\xE0-\xE6]/g,ch:"a"},{re:/[\xC8-\xCB]/g,ch:"E"},{re:/[\xE8-\xEB]/g,ch:"e"},{re:/[\xCC-\xCF]/g,ch:"I"},{re:/[\xEC-\xEF]/g,ch:"i"},{re:/[\xD2-\xD6]/g,ch:"O"},{re:/[\xF2-\xF6]/g,ch:"o"},{re:/[\xD9-\xDC]/g,ch:"U"},{re:/[\xF9-\xFC]/g,ch:"u"},{re:/[\xC7-\xE7]/g,ch:"c"},{re:/[\xD1]/g,ch:"N"},{re:/[\xF1]/g,ch:"n"}];
$.each(rExps,function(){text=text.replace(this.re,this.ch);
});
return text;
}function htmlEscape(html){var escapeMap={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"};
Object.keys=Object.keys||function(o,k,r){r=[];
for(k in o){r.hasOwnProperty.call(o,k)&&r.push(k);
}return r;
};
var source="(?:"+Object.keys(escapeMap).join("|")+")",testRegexp=new RegExp(source),replaceRegexp=new RegExp(source,"g"),string=html==null?"":""+html;
return testRegexp.test(string)?string.replace(replaceRegexp,function(match){return escapeMap[match];
}):string;
}var Selectpicker=function(element,options,e){if(e){e.stopPropagation();
e.preventDefault();
}this.$element=$(element);
this.$newElement=null;
this.$button=null;
this.$menu=null;
this.$lis=null;
this.options=options;
if(this.options.title===null){this.options.title=this.$element.attr("title");
}this.val=Selectpicker.prototype.val;
this.render=Selectpicker.prototype.render;
this.refresh=Selectpicker.prototype.refresh;
this.setStyle=Selectpicker.prototype.setStyle;
this.selectAll=Selectpicker.prototype.selectAll;
this.deselectAll=Selectpicker.prototype.deselectAll;
this.destroy=Selectpicker.prototype.remove;
this.remove=Selectpicker.prototype.remove;
this.show=Selectpicker.prototype.show;
this.hide=Selectpicker.prototype.hide;
this.init();
};
Selectpicker.VERSION="1.6.3";
Selectpicker.DEFAULTS={noneSelectedText:"Nothing selected",noneResultsText:"No results match",countSelectedText:function(numSelected,numTotal){return(numSelected==1)?"{0} item selected":"{0} items selected";
},maxOptionsText:function(numAll,numGroup){var arr=[];
arr[0]=(numAll==1)?"Limit reached ({n} item max)":"Limit reached ({n} items max)";
arr[1]=(numGroup==1)?"Group limit reached ({n} item max)":"Group limit reached ({n} items max)";
return arr;
},selectAllText:"Select All",deselectAllText:"Deselect All",multipleSeparator:", ",style:"btn-default",size:"auto",title:null,selectedTextFormat:"values",width:false,container:false,hideDisabled:false,showSubtext:false,showIcon:true,showContent:true,dropupAuto:true,header:false,liveSearch:false,actionsBox:false,iconBase:"glyphicon",tickIcon:"glyphicon-ok",maxOptions:false,mobile:false,selectOnTab:false,dropdownAlignRight:false,searchAccentInsensitive:false};
Selectpicker.prototype={constructor:Selectpicker,init:function(){var that=this,id=this.$element.attr("id");
this.$element.hide();
this.multiple=this.$element.prop("multiple");
this.autofocus=this.$element.prop("autofocus");
this.$newElement=this.createView();
this.$element.after(this.$newElement);
this.$menu=this.$newElement.find("> .dropdown-menu");
this.$button=this.$newElement.find("> button");
this.$searchbox=this.$newElement.find("input");
if(this.options.dropdownAlignRight){this.$menu.addClass("dropdown-menu-right");
}if(typeof id!=="undefined"){this.$button.attr("data-id",id);
$('label[for="'+id+'"]').click(function(e){e.preventDefault();
that.$button.focus();
});
}this.checkDisabled();
this.clickListener();
if(this.options.liveSearch){this.liveSearchListener();
}this.render();
this.liHeight();
this.setStyle();
this.setWidth();
if(this.options.container){this.selectPosition();
}this.$menu.data("this",this);
this.$newElement.data("this",this);
if(this.options.mobile){this.mobile();
}},createDropdown:function(){var multiple=this.multiple?" show-tick":"",inputGroup=this.$element.parent().hasClass("input-group")?" input-group-btn":"",autofocus=this.autofocus?" autofocus":"",btnSize=this.$element.parents().hasClass("form-group-lg")?" btn-lg":(this.$element.parents().hasClass("form-group-sm")?" btn-sm":"");
var header=this.options.header?'
'+this.options.header+"
":"";
var searchbox=this.options.liveSearch?'':"";
var actionsbox=this.options.actionsBox?' ":"";
var drop='';
return $(drop);
},createView:function(){var $drop=this.createDropdown();
var $li=this.createLi();
$drop.find("ul").append($li);
return $drop;
},reloadLi:function(){this.destroyLi();
var $li=this.createLi();
this.$menu.find("ul").append($li);
},destroyLi:function(){this.$menu.find("li").remove();
},createLi:function(){var that=this,_li=[],optID=0;
var generateLI=function(content,index,classes){return""+content+"";
};
var generateA=function(text,classes,inline,optgroup){var normText=normalizeToBase(htmlEscape(text));
return''+text+'';
};
this.$element.find("option").each(function(){var $this=$(this);
var optionClass=$this.attr("class")||"",inline=$this.attr("style"),text=$this.data("content")?$this.data("content"):$this.html(),subtext=typeof $this.data("subtext")!=="undefined"?''+$this.data("subtext")+"":"",icon=typeof $this.data("icon")!=="undefined"?' ':"",isDisabled=$this.is(":disabled")||$this.parent().is(":disabled"),index=$this[0].index;
if(icon!==""&&isDisabled){icon=""+icon+"";
}if(!$this.data("content")){text=icon+''+text+subtext+"";
}if(that.options.hideDisabled&&isDisabled){return;
}if($this.parent().is("optgroup")&&$this.data("divider")!==true){if($this.index()===0){optID+=1;
var label=$this.parent().attr("label");
var labelSubtext=typeof $this.parent().data("subtext")!=="undefined"?''+$this.parent().data("subtext")+"":"";
var labelIcon=$this.parent().data("icon")?' ':"";
label=labelIcon+''+label+labelSubtext+"";
if(index!==0&&_li.length>0){_li.push(generateLI("",null,"divider"));
}_li.push(generateLI(label,null,"dropdown-header"));
}_li.push(generateLI(generateA(text,"opt "+optionClass,inline,optID),index));
}else{if($this.data("divider")===true){_li.push(generateLI("",index,"divider"));
}else{if($this.data("hidden")===true){_li.push(generateLI(generateA(text,optionClass,inline),index,"hide is-hidden"));
}else{_li.push(generateLI(generateA(text,optionClass,inline),index));
}}}});
if(!this.multiple&&this.$element.find("option:selected").length===0&&!this.options.title){this.$element.find("option").eq(0).prop("selected",true).attr("selected","selected");
}return $(_li.join(""));
},findLis:function(){if(this.$lis==null){this.$lis=this.$menu.find("li");
}return this.$lis;
},render:function(updateLi){var that=this;
if(updateLi!==false){this.$element.find("option").each(function(index){that.setDisabled(index,$(this).is(":disabled")||$(this).parent().is(":disabled"));
that.setSelected(index,$(this).is(":selected"));
});
}this.tabIndex();
var notDisabled=this.options.hideDisabled?":not([disabled])":"";
var selectedItems=this.$element.find("option:selected"+notDisabled).map(function(){var $this=$(this);
var icon=$this.data("icon")&&that.options.showIcon?' ':"";
var subtext;
if(that.options.showSubtext&&$this.attr("data-subtext")&&!that.multiple){subtext=' '+$this.data("subtext")+"";
}else{subtext="";
}if($this.data("content")&&that.options.showContent){return $this.data("content");
}else{if(typeof $this.attr("title")!=="undefined"){return $this.attr("title");
}else{return icon+$this.html()+subtext;
}}}).toArray();
var title=!this.multiple?selectedItems[0]:selectedItems.join(this.options.multipleSeparator);
if(this.multiple&&this.options.selectedTextFormat.indexOf("count")>-1){var max=this.options.selectedTextFormat.split(">");
if((max.length>1&&selectedItems.length>max[1])||(max.length==1&&selectedItems.length>=2)){notDisabled=this.options.hideDisabled?", [disabled]":"";
var totalCount=this.$element.find("option").not('[data-divider="true"], [data-hidden="true"]'+notDisabled).length,tr8nText=(typeof this.options.countSelectedText==="function")?this.options.countSelectedText(selectedItems.length,totalCount):this.options.countSelectedText;
title=tr8nText.replace("{0}",selectedItems.length.toString()).replace("{1}",totalCount.toString());
}}this.options.title=this.$element.attr("title");
if(this.options.selectedTextFormat=="static"){title=this.options.title;
}if(!title){title=typeof this.options.title!=="undefined"?this.options.title:this.options.noneSelectedText;
}this.$button.attr("title",htmlEscape(title));
this.$newElement.find(".filter-option").html(title);
},setStyle:function(style,status){if(this.$element.attr("class")){this.$newElement.addClass(this.$element.attr("class").replace(/selectpicker|mobile-device|validate\[.*\]/gi,""));
}var buttonClass=style?style:this.options.style;
if(status=="add"){this.$button.addClass(buttonClass);
}else{if(status=="remove"){this.$button.removeClass(buttonClass);
}else{this.$button.removeClass(this.options.style);
this.$button.addClass(buttonClass);
}}},liHeight:function(){if(this.options.size===false){return;
}var $selectClone=this.$menu.parent().clone().find("> .dropdown-toggle").prop("autofocus",false).end().appendTo("body"),$menuClone=$selectClone.addClass("open").find("> .dropdown-menu"),liHeight=$menuClone.find("li").not(".divider").not(".dropdown-header").filter(":visible").children("a").outerHeight(),headerHeight=this.options.header?$menuClone.find(".popover-title").outerHeight():0,searchHeight=this.options.liveSearch?$menuClone.find(".bs-searchbox").outerHeight():0,actionsHeight=this.options.actionsBox?$menuClone.find(".bs-actionsbox").outerHeight():0;
$selectClone.remove();
this.$newElement.data("liHeight",liHeight).data("headerHeight",headerHeight).data("searchHeight",searchHeight).data("actionsHeight",actionsHeight);
},setSize:function(){this.findLis();
var that=this,menu=this.$menu,menuInner=menu.find(".inner"),selectHeight=this.$newElement.outerHeight(),liHeight=this.$newElement.data("liHeight"),headerHeight=this.$newElement.data("headerHeight"),searchHeight=this.$newElement.data("searchHeight"),actionsHeight=this.$newElement.data("actionsHeight"),divHeight=this.$lis.filter(".divider").outerHeight(true),menuPadding=parseInt(menu.css("padding-top"))+parseInt(menu.css("padding-bottom"))+parseInt(menu.css("border-top-width"))+parseInt(menu.css("border-bottom-width")),notDisabled=this.options.hideDisabled?", .disabled":"",$window=$(window),menuExtras=menuPadding+parseInt(menu.css("margin-top"))+parseInt(menu.css("margin-bottom"))+2,menuHeight,selectOffsetTop,selectOffsetBot,posVert=function(){selectOffsetTop=that.$newElement.offset().top-$window.scrollTop();
selectOffsetBot=$window.height()-selectOffsetTop-selectHeight;
};
posVert();
if(this.options.header){menu.css("padding-top",0);
}if(this.options.size=="auto"){var getSize=function(){var minHeight,lisVis=that.$lis.not(".hide");
posVert();
menuHeight=selectOffsetBot-menuExtras;
if(that.options.dropupAuto){that.$newElement.toggleClass("dropup",(selectOffsetTop>selectOffsetBot)&&((menuHeight-menuExtras)3){minHeight=liHeight*3+menuExtras-2;
}else{minHeight=0;
}menu.css({"max-height":menuHeight+"px",overflow:"hidden","min-height":minHeight+headerHeight+searchHeight+actionsHeight+"px"});
menuInner.css({"max-height":menuHeight-headerHeight-searchHeight-actionsHeight-menuPadding+"px","overflow-y":"auto","min-height":Math.max(minHeight-menuPadding,0)+"px"});
};
getSize();
this.$searchbox.off("input.getSize propertychange.getSize").on("input.getSize propertychange.getSize",getSize);
$(window).off("resize.getSize").on("resize.getSize",getSize);
$(window).off("scroll.getSize").on("scroll.getSize",getSize);
}else{if(this.options.size&&this.options.size!="auto"&&menu.find("li"+notDisabled).length>this.options.size){var optIndex=this.$lis.not(".divider"+notDisabled).find(" > *").slice(0,this.options.size).last().parent().index();
var divLength=this.$lis.slice(0,optIndex+1).filter(".divider").length;
menuHeight=liHeight*this.options.size+divLength*divHeight+menuPadding;
if(that.options.dropupAuto){this.$newElement.toggleClass("dropup",(selectOffsetTop>selectOffsetBot)&&(menuHeight .dropdown-menu").css("width");
var btnWidth=selectClone.css("width","auto").find("> button").css("width");
selectClone.remove();
this.$newElement.css("width",Math.max(parseInt(ulWidth),parseInt(btnWidth))+"px");
}else{if(this.options.width=="fit"){this.$menu.css("min-width","");
this.$newElement.css("width","").addClass("fit-width");
}else{if(this.options.width){this.$menu.css("min-width","");
this.$newElement.css("width",this.options.width);
}else{this.$menu.css("min-width","");
this.$newElement.css("width","");
}}}if(this.$newElement.hasClass("fit-width")&&this.options.width!=="fit"){this.$newElement.removeClass("fit-width");
}},selectPosition:function(){var that=this,drop="",$drop=$(drop),pos,actualHeight,getPlacement=function($element){$drop.addClass($element.attr("class").replace(/form-control/gi,"")).toggleClass("dropup",$element.hasClass("dropup"));
pos=$element.offset();
actualHeight=$element.hasClass("dropup")?0:$element[0].offsetHeight;
$drop.css({top:pos.top+actualHeight,left:pos.left,width:$element[0].offsetWidth,position:"absolute"});
};
this.$newElement.on("click",function(){if(that.isDisabled()){return;
}getPlacement($(this));
$drop.appendTo(that.options.container);
$drop.toggleClass("open",!$(this).hasClass("open"));
$drop.append(that.$menu);
});
$(window).resize(function(){getPlacement(that.$newElement);
});
$(window).on("scroll",function(){getPlacement(that.$newElement);
});
$("html").on("click",function(e){if($(e.target).closest(that.$newElement).length<1){$drop.removeClass("open");
}});
},setSelected:function(index,selected){this.findLis();
this.$lis.filter('[data-original-index="'+index+'"]').toggleClass("selected",selected);
},setDisabled:function(index,disabled){this.findLis();
if(disabled){this.$lis.filter('[data-original-index="'+index+'"]').addClass("disabled").find("a").attr("href","#").attr("tabindex",-1);
}else{this.$lis.filter('[data-original-index="'+index+'"]').removeClass("disabled").find("a").removeAttr("href").attr("tabindex",0);
}},isDisabled:function(){return this.$element.is(":disabled");
},checkDisabled:function(){var that=this;
if(this.isDisabled()){this.$button.addClass("disabled").attr("tabindex",-1);
}else{if(this.$button.hasClass("disabled")){this.$button.removeClass("disabled");
}if(this.$button.attr("tabindex")==-1){if(!this.$element.data("tabindex")){this.$button.removeAttr("tabindex");
}}}this.$button.click(function(){return !that.isDisabled();
});
},tabIndex:function(){if(this.$element.is("[tabindex]")){this.$element.data("tabindex",this.$element.attr("tabindex"));
this.$button.attr("tabindex",this.$element.data("tabindex"));
}},clickListener:function(){var that=this;
this.$newElement.on("touchstart.dropdown",".dropdown-menu",function(e){e.stopPropagation();
});
this.$newElement.on("click",function(){that.setSize();
if(!that.options.liveSearch&&!that.multiple){setTimeout(function(){that.$menu.find(".selected a").focus();
},10);
}});
this.$menu.on("click","li a",function(e){var $this=$(this),clickedIndex=$this.parent().data("originalIndex"),prevValue=that.$element.val(),prevIndex=that.$element.prop("selectedIndex");
if(that.multiple){e.stopPropagation();
}e.preventDefault();
if(!that.isDisabled()&&!$this.parent().hasClass("disabled")){var $options=that.$element.find("option"),$option=$options.eq(clickedIndex),state=$option.prop("selected"),$optgroup=$option.parent("optgroup"),maxOptions=that.options.maxOptions,maxOptionsGrp=$optgroup.data("maxOptions")||false;
if(!that.multiple){$options.prop("selected",false);
$option.prop("selected",true);
that.$menu.find(".selected").removeClass("selected");
that.setSelected(clickedIndex,true);
}else{$option.prop("selected",!state);
that.setSelected(clickedIndex,!state);
$this.blur();
if((maxOptions!==false)||(maxOptionsGrp!==false)){var maxReached=maxOptions<$options.filter(":selected").length,maxReachedGrp=maxOptionsGrp<$optgroup.find("option:selected").length;
if((maxOptions&&maxReached)||(maxOptionsGrp&&maxReachedGrp)){if(maxOptions&&maxOptions==1){$options.prop("selected",false);
$option.prop("selected",true);
that.$menu.find(".selected").removeClass("selected");
that.setSelected(clickedIndex,true);
}else{if(maxOptionsGrp&&maxOptionsGrp==1){$optgroup.find("option:selected").prop("selected",false);
$option.prop("selected",true);
var optgroupID=$this.data("optgroup");
that.$menu.find(".selected").has('a[data-optgroup="'+optgroupID+'"]').removeClass("selected");
that.setSelected(clickedIndex,true);
}else{var maxOptionsArr=(typeof that.options.maxOptionsText==="function")?that.options.maxOptionsText(maxOptions,maxOptionsGrp):that.options.maxOptionsText,maxTxt=maxOptionsArr[0].replace("{n}",maxOptions),maxTxtGrp=maxOptionsArr[1].replace("{n}",maxOptionsGrp),$notify=$('');
if(maxOptionsArr[2]){maxTxt=maxTxt.replace("{var}",maxOptionsArr[2][maxOptions>1?0:1]);
maxTxtGrp=maxTxtGrp.replace("{var}",maxOptionsArr[2][maxOptionsGrp>1?0:1]);
}$option.prop("selected",false);
that.$menu.append($notify);
if(maxOptions&&maxReached){$notify.append($(""+maxTxt+"
"));
that.$element.trigger("maxReached.bs.select");
}if(maxOptionsGrp&&maxReachedGrp){$notify.append($(""+maxTxtGrp+"
"));
that.$element.trigger("maxReachedGrp.bs.select");
}setTimeout(function(){that.setSelected(clickedIndex,false);
},10);
$notify.delay(750).fadeOut(300,function(){$(this).remove();
});
}}}}}if(!that.multiple){that.$button.focus();
}else{if(that.options.liveSearch){that.$searchbox.focus();
}}if((prevValue!=that.$element.val()&&that.multiple)||(prevIndex!=that.$element.prop("selectedIndex")&&!that.multiple)){that.$element.change();
}}});
this.$menu.on("click","li.disabled a, .popover-title, .popover-title :not(.close)",function(e){if(e.target==this){e.preventDefault();
e.stopPropagation();
if(!that.options.liveSearch){that.$button.focus();
}else{that.$searchbox.focus();
}}});
this.$menu.on("click","li.divider, li.dropdown-header",function(e){e.preventDefault();
e.stopPropagation();
if(!that.options.liveSearch){that.$button.focus();
}else{that.$searchbox.focus();
}});
this.$menu.on("click",".popover-title .close",function(){that.$button.focus();
});
this.$searchbox.on("click",function(e){e.stopPropagation();
});
this.$menu.on("click",".actions-btn",function(e){if(that.options.liveSearch){that.$searchbox.focus();
}else{that.$button.focus();
}e.preventDefault();
e.stopPropagation();
if($(this).is(".bs-select-all")){that.selectAll();
}else{that.deselectAll();
}that.$element.change();
});
this.$element.change(function(){that.render(false);
});
},liveSearchListener:function(){var that=this,no_results=$('');
this.$newElement.on("click.dropdown.data-api touchstart.dropdown.data-api",function(){that.$menu.find(".active").removeClass("active");
if(!!that.$searchbox.val()){that.$searchbox.val("");
that.$lis.not(".is-hidden").removeClass("hide");
if(!!no_results.parent().length){no_results.remove();
}}if(!that.multiple){that.$menu.find(".selected").addClass("active");
}setTimeout(function(){that.$searchbox.focus();
},10);
});
this.$searchbox.on("click.dropdown.data-api focus.dropdown.data-api touchend.dropdown.data-api",function(e){e.stopPropagation();
});
this.$searchbox.on("input propertychange",function(){if(that.$searchbox.val()){if(that.options.searchAccentInsensitive){that.$lis.not(".is-hidden").removeClass("hide").find("a").not(":aicontains("+normalizeToBase(that.$searchbox.val())+")").parent().addClass("hide");
}else{that.$lis.not(".is-hidden").removeClass("hide").find("a").not(":icontains("+that.$searchbox.val()+")").parent().addClass("hide");
}if(!that.$menu.find("li").filter(":visible:not(.no-results)").length){if(!!no_results.parent().length){no_results.remove();
}no_results.html(that.options.noneResultsText+' "'+htmlEscape(that.$searchbox.val())+'"').show();
that.$menu.find("li").last().after(no_results);
}else{if(!!no_results.parent().length){no_results.remove();
}}}else{that.$lis.not(".is-hidden").removeClass("hide");
if(!!no_results.parent().length){no_results.remove();
}}that.$menu.find("li.active").removeClass("active");
that.$menu.find("li").filter(":visible:not(.divider)").eq(0).addClass("active").find("a").focus();
$(this).focus();
});
},val:function(value){if(typeof value!=="undefined"){this.$element.val(value);
this.render();
return this.$element;
}else{return this.$element.val();
}},selectAll:function(){this.findLis();
this.$lis.not(".divider").not(".disabled").not(".selected").filter(":visible").find("a").click();
},deselectAll:function(){this.findLis();
this.$lis.not(".divider").not(".disabled").filter(".selected").filter(":visible").find("a").click();
},keydown:function(e){var $this=$(this),$parent=($this.is("input"))?$this.parent().parent():$this.parent(),$items,that=$parent.data("this"),index,next,first,last,prev,nextPrev,prevIndex,isActive,keyCodeMap={32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9"};
if(that.options.liveSearch){$parent=$this.parent().parent();
}if(that.options.container){$parent=that.$menu;
}$items=$("[role=menu] li a",$parent);
isActive=that.$menu.parent().hasClass("open");
if(!isActive&&/([0-9]|[A-z])/.test(String.fromCharCode(e.keyCode))){if(!that.options.container){that.setSize();
that.$menu.parent().addClass("open");
isActive=true;
}else{that.$newElement.trigger("click");
}that.$searchbox.focus();
}if(that.options.liveSearch){if(/(^9$|27)/.test(e.keyCode.toString(10))&&isActive&&that.$menu.find(".active").length===0){e.preventDefault();
that.$menu.parent().removeClass("open");
that.$button.focus();
}$items=$("[role=menu] li:not(.divider):not(.dropdown-header):visible",$parent);
if(!$this.val()&&!/(38|40)/.test(e.keyCode.toString(10))){if($items.filter(".active").length===0){if(that.options.searchAccentInsensitive){$items=that.$newElement.find("li").filter(":aicontains("+normalizeToBase(keyCodeMap[e.keyCode])+")");
}else{$items=that.$newElement.find("li").filter(":icontains("+keyCodeMap[e.keyCode]+")");
}}}}if(!$items.length){return;
}if(/(38|40)/.test(e.keyCode.toString(10))){index=$items.index($items.filter(":focus"));
first=$items.parent(":not(.disabled):visible").first().index();
last=$items.parent(":not(.disabled):visible").last().index();
next=$items.eq(index).parent().nextAll(":not(.disabled):visible").eq(0).index();
prev=$items.eq(index).parent().prevAll(":not(.disabled):visible").eq(0).index();
nextPrev=$items.eq(next).parent().prevAll(":not(.disabled):visible").eq(0).index();
if(that.options.liveSearch){$items.each(function(i){if($(this).is(":not(.disabled)")){$(this).data("index",i);
}});
index=$items.index($items.filter(".active"));
first=$items.filter(":not(.disabled):visible").first().data("index");
last=$items.filter(":not(.disabled):visible").last().data("index");
next=$items.eq(index).nextAll(":not(.disabled):visible").eq(0).data("index");
prev=$items.eq(index).prevAll(":not(.disabled):visible").eq(0).data("index");
nextPrev=$items.eq(next).prevAll(":not(.disabled):visible").eq(0).data("index");
}prevIndex=$this.data("prevIndex");
if(e.keyCode==38){if(that.options.liveSearch){index-=1;
}if(index!=nextPrev&&index>prev){index=prev;
}if(indexlast){index=last;
}if(index==prevIndex){index=first;
}}$this.data("prevIndex",index);
if(!that.options.liveSearch){$items.eq(index).focus();
}else{e.preventDefault();
if(!$this.is(".dropdown-toggle")){$items.removeClass("active");
$items.eq(index).addClass("active").find("a").focus();
$this.focus();
}}}else{if(!$this.is("input")){var keyIndex=[],count,prevKey;
$items.each(function(){if($(this).parent().is(":not(.disabled)")){if($.trim($(this).text().toLowerCase()).substring(0,1)==keyCodeMap[e.keyCode]){keyIndex.push($(this).parent().index());
}}});
count=$(document).data("keycount");
count++;
$(document).data("keycount",count);
prevKey=$.trim($(":focus").text().toLowerCase()).substring(0,1);
if(prevKey!=keyCodeMap[e.keyCode]){count=1;
$(document).data("keycount",count);
}else{if(count>=keyIndex.length){$(document).data("keycount",0);
if(count>keyIndex.length){count=1;
}}}$items.eq(keyIndex[count-1]).focus();
}}if((/(13|32)/.test(e.keyCode.toString(10))||(/(^9$)/.test(e.keyCode.toString(10))&&that.options.selectOnTab))&&isActive){if(!/(32)/.test(e.keyCode.toString(10))){e.preventDefault();
}if(!that.options.liveSearch){$(":focus").click();
}else{if(!/(32)/.test(e.keyCode.toString(10))){that.$menu.find(".active a").click();
$this.focus();
}}$(document).data("keycount",0);
}if((/(^9$|27)/.test(e.keyCode.toString(10))&&isActive&&(that.multiple||that.options.liveSearch))||(/(27)/.test(e.keyCode.toString(10))&&!isActive)){that.$menu.parent().removeClass("open");
that.$button.focus();
}},mobile:function(){this.$element.addClass("mobile-device").appendTo(this.$newElement);
if(this.options.container){this.$menu.hide();
}},refresh:function(){this.$lis=null;
this.reloadLi();
this.render();
this.setWidth();
this.setStyle();
this.checkDisabled();
this.liHeight();
},update:function(){this.reloadLi();
this.setWidth();
this.setStyle();
this.checkDisabled();
this.liHeight();
},hide:function(){this.$newElement.hide();
},show:function(){this.$newElement.show();
},remove:function(){this.$newElement.remove();
this.$element.remove();
}};
function Plugin(option,event){var args=arguments;
var _option=option,option=args[0],event=args[1];
[].shift.apply(args);
if(typeof option=="undefined"){option=_option;
}var value;
var chain=this.each(function(){var $this=$(this);
if($this.is("select")){var data=$this.data("selectpicker"),options=typeof option=="object"&&option;
if(!data){var config=$.extend({},Selectpicker.DEFAULTS,$.fn.selectpicker.defaults||{},$this.data(),options);
$this.data("selectpicker",(data=new Selectpicker(this,config,event)));
}else{if(options){for(var i in options){if(options.hasOwnProperty(i)){data.options[i]=options[i];
}}}}if(typeof option=="string"){if(data[option] instanceof Function){value=data[option].apply(data,args);
}else{value=data.options[option];
}}}});
if(typeof value!=="undefined"){return value;
}else{return chain;
}}var old=$.fn.selectpicker;
$.fn.selectpicker=Plugin;
$.fn.selectpicker.Constructor=Selectpicker;
$.fn.selectpicker.noConflict=function(){$.fn.selectpicker=old;
return this;
};
$(document).data("keycount",0).on("keydown",".bootstrap-select [data-toggle=dropdown], .bootstrap-select [role=menu], .bs-searchbox input",Selectpicker.prototype.keydown).on("focusin.modal",".bootstrap-select [data-toggle=dropdown], .bootstrap-select [role=menu], .bs-searchbox input",function(e){e.stopPropagation();
});
$(window).on("load.bs.select.data-api",function(){$(".selectpicker").each(function(){var $selectpicker=$(this);
Plugin.call($selectpicker,$selectpicker.data());
});
});
})(jQuery);