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