(function($){$.fn.niceSelect=function(options){var options=$.extend({},$.fn.niceSelect.defaults,options);return this.each(function(){var $this=$(this);var idu=$this.attr("rel");$this.hide();$this.after('<input type="hidden" class="'+$this[0].className.replace('nice','')+'" name="'+$this[0].name+'" value="'+$this.val()+'" />');$this.before('<input type="text" class="'+options.virtualInputClass+'" readonly="readonly" id="select'+idu+'" rel="'+$(this).val()+'" value="'+$this[0].options[$this[0].selectedIndex].text+'" />');var opts_obj=document.createElement("UL");$(opts_obj).addClass(options.virtualSelectClass);var option=null;for(var i=0;i<$this[0].options.length;i++){option=document.createElement("LI");$(option).attr("rel",$this[0].options[i].value);$(option).html($this[0].options[i].text);if(i==$this[0].options.length-1)
$(option).addClass(options.lastClass);if($(option).attr("rel")==$this.val())
$(option).addClass(options.selectedClass);opts_obj.appendChild(option);}
$("#select"+idu).after(opts_obj);$this.remove();$("li",opts_obj).hover(function(){$(this).addClass(options.overClass);},function(){$(this).removeClass(options.overClass);}).click(function(){var $this=$(this);$this.parent().hide();$this.parent().prev().val($this.html());$this.parent().next().val($this.attr("rel"));$this.siblings("li").removeClass(options.selectedClass);$this.addClass(options.selectedClass);if(options.selectCallback!=null){var arguments=[{text:$this.html(),value:$this.attr("rel")},$this.parent()];options.selectCallback.apply(this,arguments);}
return false;});$("#select"+idu).click(function(){var $this=$(this);$("."+options.virtualSelectClass).not($this.next()).hide();$this.next("ul").toggle();if($this.next("ul").css("display")!="none"&&options.openCallback!=null){var arguments=[$this,$this.next("ul")];options.openCallback.apply(this,arguments);}
return false;});$("body").click(function(){$("."+options.virtualSelectClass).hide();});});}
$.fn.niceSelect.defaults={selectedClass:"selected",overClass:"over",virtualSelectClass:"virtual_select",virtualInputClass:"nice_select",lastClass:"last",selectCallback:null,openCallback:null};})(jQuery);
