(function(d){d.fn.jNice=function(m){var l=this;var n=d.browser.safari;d(document).mousedown(a);return this.each(function(){d("input:submit, input:reset, input:button",this).each(g);d("button").focus(function(){d(this).addClass("jNiceFocus")}).blur(function(){d(this).removeClass("jNiceFocus")});d("input:text:visible, input:password",this).each(j);if(n){d(".jNiceInputWrapper").each(function(){d(this).addClass("jNiceSafari").find("input").css("width",d(this).width()+11)})}d("input:checkbox",this).each(h);d("input:radio",this).each(f);d("select",this).each(function(o){e(this,o)});d(this).bind("reset",function(){var o=function(){b(this)};window.setTimeout(o,10)});d(".jNiceHidden").css({opacity:0})})};var b=function(l){var m;d(".jNiceSelectWrapper select",l).each(function(){m=(this.selectedIndex<0)?0:this.selectedIndex;d("ul",d(this).parent()).each(function(){d("a:eq("+m+")",this).click()})});d("a.jNiceCheckbox, a.jNiceRadio",l).removeClass("jNiceChecked");d("input:checkbox, input:radio",l).each(function(){if(this.checked){d("a",d(this).parent()).addClass("jNiceChecked")}})};var f=function(){var n=d(this).addClass("jNiceHidden").wrap('<span class="jRadioWrapper jNiceWrapper"></span>');var m=n.parent();var l=d('<span class="jNiceRadio"></span>');m.prepend(l);l.click(function(){var o=d(this).addClass("jNiceChecked").siblings("input").attr("checked",true);d('input:radio[name="'+o.attr("name")+'"]').not(o).each(function(){d(this).attr("checked",false).siblings(".jNiceRadio").removeClass("jNiceChecked")});return false});n.click(function(){if(this.checked){var o=d(this).siblings(".jNiceRadio").addClass("jNiceChecked").end();d('input:radio[name="'+o.attr("name")+'"]').not(o).each(function(){d(this).attr("checked",false).siblings(".jNiceRadio").removeClass("jNiceChecked")})}}).focus(function(){l.addClass("jNiceFocus")}).blur(function(){l.removeClass("jNiceFocus")});if(this.checked){l.addClass("jNiceChecked")}};var h=function(){var n=d(this).addClass("jNiceHidden").wrap('<span class="jNiceWrapper"></span>');var m=n.parent().append('<span class="jNiceCheckbox"></span>');var l=m.find(".jNiceCheckbox").click(function(){var p=d(this);var o=p.siblings("input")[0];if(o.checked===true){o.checked=false;p.removeClass("jNiceChecked")}else{o.checked=true;p.addClass("jNiceChecked")}return false});n.click(function(){if(this.checked){l.addClass("jNiceChecked")}else{l.removeClass("jNiceChecked")}}).focus(function(){l.addClass("jNiceFocus")}).blur(function(){l.removeClass("jNiceFocus")});if(this.checked){d(".jNiceCheckbox",m).addClass("jNiceChecked")}};var j=function(){var m=d(this).addClass("jNiceInput").wrap('<div class="jNiceInputWrapper"><div class="jNiceInputInner"></div></div>');var l=m.parents(".jNiceInputWrapper");m.focus(function(){l.addClass("jNiceInputWrapper_hover")}).blur(function(){l.removeClass("jNiceInputWrapper_hover")})};var g=function(){var l=d(this).attr("value");d(this).replaceWith('<button id="'+this.id+'" name="'+this.name+'" type="'+this.type+'" class="'+this.className+'" value="'+l+'"><span><span>'+l+"</span></span>")};var c=function(){d(".jNiceSelectWrapper ul:visible").hide()};var a=function(l){if(d(l.target).parents(".jNiceSelectWrapper").length===0){c()}};var e=function(n,m){var l=d(n);m=m||l.css("zIndex")*1;m=(m)?m:0;l.wrap(d('<div class="jNiceWrapper"></div>').css({zIndex:100-m}));var o=l.width();l.addClass("jNiceHidden").after('<div class="jNiceSelectWrapper"><div><span class="jNiceSelectText"></span><span class="jNiceSelectOpen"></span></div><ul></ul></div>');var p=d(n).siblings(".jNiceSelectWrapper").css({width:o+"px"});d(".jNiceSelectText, .jNiceSelectWrapper ul",p);if(d.browser.msie&&jQuery.browser.version<7){l.after(d('<iframe src="javascript:\'\';" marginwidth="0" marginheight="0" align="bottom" scrolling="no" tabIndex="-1" frameborder="0"></iframe>').css({height:l.height()+4+"px"}))}i(n);d("div",p).click(function(){var q=d(this).siblings("ul");if(q.css("display")=="none"){c()}q.slideToggle();var r=(d("a.selected",q).offset().top-q.offset().top);q.animate({scrollTop:r});return false});l.keydown(function(r){var q=this.selectedIndex;switch(r.keyCode){case 40:if(q<this.options.length-1){q+=1}break;case 38:if(q>0){q-=1}break;default:return;break}d("ul a",p).removeClass("selected").eq(q).addClass("selected");d("span:eq(0)",p).html(d("option:eq("+q+")",l).attr("selected","selected").text());return false}).focus(function(){p.addClass("jNiceFocus")}).blur(function(){p.removeClass("jNiceFocus")})};var i=function(n){var m=d(n);var o=m.siblings(".jNiceSelectWrapper");var l=o.find("ul").find("li").remove().end().hide();d("option",m).each(function(p){l.append('<li><a href="#" index="'+p+'">'+this.text+"</a></li>")});l.find("a").click(function(){d("a.selected",o).removeClass("selected");d(this).addClass("selected");if(m[0].selectedIndex!=d(this).attr("index")&&m[0].onchange){m[0].selectedIndex=d(this).attr("index");m[0].onchange()}m[0].selectedIndex=d(this).attr("index");d("span:eq(0)",o).html(d(this).html());l.hide();return false});d("a:eq("+m[0].selectedIndex+")",l).click()};var k=function(l){var m=d(l).siblings(".jNiceSelectWrapper").css("zIndex");d(l).css({zIndex:m}).removeClass("jNiceHidden");d(l).siblings(".jNiceSelectWrapper").remove()};d.jNice={SelectAdd:function(m,l){e(m,l)},SelectRemove:function(l){k(l)},SelectUpdate:function(l){i(l)}};d(function(){d("div.jNice").jNice()})})(jQuery);