// this is modified for ET
(function($){$.uniform={options:{selectClass:'selector',radioClass:'radio',checkboxClass:'checker',fileClass:'uploader',filenameClass:'filename',fileBtnClass:'action',fileDefaultText:'No file selected',fileBtnText:'Choose File',checkedClass:'checked',focusClass:'focus',disabledClass:'disabled',buttonClass:'button',activeClass:'active',hoverClass:'hover',useID:true,idPrefix:'uniform',resetSelector:false,autoHide:true},elements:[]};if($.browser.msie&&$.browser.version<7){$.support.selectOpacity=false}else{$.support.selectOpacity=true}$.fn.uniform=function(options){options=$.extend($.uniform.options,options);var el=this;if(options.resetSelector!=false){$(options.resetSelector).mouseup(function(){function resetThis(){$.uniform.update(el)}setTimeout(resetThis,10)})}function doInput(elem){$el=$(elem);$el.addClass($el.attr("type"));storeElement(elem)}function doTextarea(elem){$(elem).addClass("uniform");storeElement(elem)}function doButton(elem){var $el=$(elem);var divTag=$("<div>"),spanTag=$("<span>");divTag.addClass(options.buttonClass);if(options.useID&&$el.attr("id")!="")divTag.attr("id",options.idPrefix+"-"+$el.attr("id"));var btnText;if($el.is("a")||$el.is("button")){btnText=$el.text()}else if($el.is(":submit")||$el.is(":reset")||$el.is("input[type=button]")){btnText=$el.attr("value")}btnText=btnText==""?$el.is(":reset")?"Reset":"Submit":btnText;spanTag.html(btnText);$el.css("opacity",0);$el.wrap(divTag);$el.wrap(spanTag);divTag=$el.closest("div");spanTag=$el.closest("span");if($el.is(":disabled"))divTag.addClass(options.disabledClass);divTag.bind({"mouseenter.uniform":function(){divTag.addClass(options.hoverClass)},"mouseleave.uniform":function(){divTag.removeClass(options.hoverClass);divTag.removeClass(options.activeClass)},"mousedown.uniform touchbegin.uniform":function(){divTag.addClass(options.activeClass)},"mouseup.uniform touchend.uniform":function(){divTag.removeClass(options.activeClass)},"click.uniform touchend.uniform":function(e){if($(e.target).is("span")||$(e.target).is("div")){if(elem[0].dispatchEvent){var ev=document.createEvent('MouseEvents');ev.initEvent('click',true,true);elem[0].dispatchEvent(ev)}else{elem[0].click()}}}});elem.bind({"focus.uniform":function(){divTag.addClass(options.focusClass)},"blur.uniform":function(){divTag.removeClass(options.focusClass)}});$.uniform.noSelect(divTag);storeElement(elem)}function doSelect(elem){var $el=$(elem);var divTag=$('<div />'),spanTag=$('<span />');if(!$el.css("display")=="none"&&options.autoHide){divTag.hide()}divTag.addClass(options.selectClass);if(options.useID&&elem.attr("id")!=""){divTag.attr("id",options.idPrefix+"-"+elem.attr("id"))}var selected=elem.find(":selected:first");if(selected.length==0){selected=elem.find("option:first")}spanTag.html(selected.html());elem.css('opacity',0);elem.wrap(divTag);elem.before(spanTag);divTag=elem.parent("div");spanTag=elem.siblings("span");elem.bind({"change.uniform":function(){spanTag.text(elem.find(":selected").html());divTag.removeClass(options.activeClass)},"focus.uniform":function(){divTag.addClass(options.focusClass)},"blur.uniform":function(){divTag.removeClass(options.focusClass);divTag.removeClass(options.activeClass)},"mousedown.uniform touchbegin.uniform":function(){divTag.addClass(options.activeClass)},"mouseup.uniform touchend.uniform":function(){divTag.removeClass(options.activeClass)},"click.uniform touchend.uniform":function(){divTag.removeClass(options.activeClass)},"mouseenter.uniform":function(){divTag.addClass(options.hoverClass)},"mouseleave.uniform":function(){divTag.removeClass(options.hoverClass);divTag.removeClass(options.activeClass)},"keyup.uniform":function(){spanTag.text(elem.find(":selected").html())}});if($(elem).attr("disabled")){divTag.addClass(options.disabledClass)}$.uniform.noSelect(spanTag);storeElement(elem)}function doCheckbox(elem){var $el=$(elem);if($el.css('opacity')==0){return}var divTag=$('<div />'),spanTag=$('<span />');if(!$el.css("display")=="none"&&options.autoHide){divTag.hide()}divTag.addClass(options.checkboxClass);if(options.useID&&elem.attr("id")!=""){divTag.attr("id",options.idPrefix+"-"+elem.attr("id"))}$(elem).wrap(divTag);$(elem).wrap(spanTag);spanTag=elem.parent();divTag=spanTag.parent();$(elem).css("opacity",0).bind({"focus.uniform":function(){divTag.addClass(options.focusClass)},"blur.uniform":function(){divTag.removeClass(options.focusClass)},"click.uniform touchend.uniform":function(){if(!$(elem).attr("checked")){spanTag.removeClass(options.checkedClass)}else{spanTag.addClass(options.checkedClass)}},"mousedown.uniform touchbegin.uniform":function(){divTag.addClass(options.activeClass)},"mouseup.uniform touchend.uniform":function(){divTag.removeClass(options.activeClass)},"mouseenter.uniform":function(){divTag.addClass(options.hoverClass)},"mouseleave.uniform":function(){divTag.removeClass(options.hoverClass);divTag.removeClass(options.activeClass)}});if($(elem).attr("checked")){spanTag.addClass(options.checkedClass)}if($(elem).attr("disabled")){divTag.addClass(options.disabledClass)}storeElement(elem)}function doRadio(elem){var $el=$(elem);if($el.css('opacity')==0){return}var divTag=$('<div />'),spanTag=$('<span />');if(!$el.css("display")=="none"&&options.autoHide){divTag.hide()}divTag.addClass(options.radioClass);if(options.useID&&elem.attr("id")!=""){divTag.attr("id",options.idPrefix+"-"+elem.attr("id"))}$(elem).wrap(divTag);$(elem).wrap(spanTag);spanTag=elem.parent();divTag=spanTag.parent();$(elem).css("opacity",0).bind({"focus.uniform":function(){divTag.addClass(options.focusClass)},"blur.uniform":function(){divTag.removeClass(options.focusClass)},"click.uniform touchend.uniform":function(){if(!$(elem).attr("checked")){spanTag.removeClass(options.checkedClass)}else{var classes=options.radioClass.split(" ")[0];$("."+classes+" span."+options.checkedClass+":has([name='"+$(elem).attr('name')+"'])").removeClass(options.checkedClass);spanTag.addClass(options.checkedClass)}},"mousedown.uniform touchend.uniform":function(){if(!$(elem).is(":disabled")){divTag.addClass(options.activeClass)}},"mouseup.uniform touchbegin.uniform":function(){divTag.removeClass(options.activeClass)},"mouseenter.uniform touchend.uniform":function(){divTag.addClass(options.hoverClass)},"mouseleave.uniform":function(){divTag.removeClass(options.hoverClass);divTag.removeClass(options.activeClass)}});if($(elem).attr("checked")){spanTag.addClass(options.checkedClass)}if($(elem).attr("disabled")){divTag.addClass(options.disabledClass)}storeElement(elem)}function doFile(elem){var $el=$(elem);var divTag=$('<div />'),filenameTag=$('<span>'+options.fileDefaultText+'</span>'),btnTag=$('<span>'+options.fileBtnText+'</span>');if(!$el.css("display")=="none"&&options.autoHide){divTag.hide()}divTag.addClass(options.fileClass);filenameTag.addClass(options.filenameClass);btnTag.addClass(options.fileBtnClass);if(options.useID&&$el.attr("id")!=""){divTag.attr("id",options.idPrefix+"-"+$el.attr("id"))}$el.wrap(divTag);$el.after(btnTag);$el.after(filenameTag);divTag=$el.closest("div");filenameTag=$el.siblings("."+options.filenameClass);btnTag=$el.siblings("."+options.fileBtnClass);if(!$el.attr("size")){var divWidth=divTag.width();$el.attr("size",divWidth/10)}var setFilename=function(){var filename=$el.val();if(filename===''){filename=options.fileDefaultText}else{filename=filename.split(/[\/\\]+/);filename=filename[(filename.length-1)]}filenameTag.text(filename)};setFilename();$el.css("opacity",0).bind({"focus.uniform":function(){divTag.addClass(options.focusClass)},"blur.uniform":function(){divTag.removeClass(options.focusClass)},"mousedown.uniform":function(){if(!$(elem).is(":disabled")){divTag.addClass(options.activeClass)}},"mouseup.uniform":function(){divTag.removeClass(options.activeClass)},"mouseenter.uniform":function(){divTag.addClass(options.hoverClass)},"mouseleave.uniform":function(){divTag.removeClass(options.hoverClass);divTag.removeClass(options.activeClass)}});if($.browser.msie){$el.bind('click.uniform.ie7',function(){setTimeout(setFilename,0)})}else{$el.bind('change.uniform',setFilename)}if($el.attr("disabled")){divTag.addClass(options.disabledClass)}$.uniform.noSelect(filenameTag);$.uniform.noSelect(btnTag);storeElement(elem)}$.uniform.restore=function(elem){if(elem==undefined){elem=$($.uniform.elements)}$(elem).each(function(){if($(this).is(":checkbox")){$(this).unwrap().unwrap()}else if($(this).is("select")){$(this).siblings("span").remove();$(this).unwrap()}else if($(this).is(":radio")){$(this).unwrap().unwrap()}else if($(this).is(":file")){$(this).siblings("span").remove();$(this).unwrap()}else if($(this).is("button, :submit, :reset, a, input[type='button']")){$(this).unwrap().unwrap()}$(this).unbind(".uniform");$(this).css("opacity","1");var index=$.inArray($(elem),$.uniform.elements);$.uniform.elements.splice(index,1)})};function storeElement(elem){elem=$(elem).get();if(elem.length>1){$.each(elem,function(i,val){$.uniform.elements.push(val)})}else{$.uniform.elements.push(elem)}}$.uniform.noSelect=function(elem){function f(){return false};$(elem).each(function(){this.onselectstart=this.ondragstart=f;$(this).mousedown(f).css({MozUserSelect:'none'})})};$.uniform.update=function(elem){if(elem==undefined){elem=$($.uniform.elements)}elem=$(elem);elem.each(function(){var $e=$(this);if($e.is("select")){var spanTag=$e.siblings("span");var divTag=$e.parent("div");divTag.removeClass(options.hoverClass+" "+options.focusClass+" "+options.activeClass);spanTag.html($e.find(":selected").html());if($e.is(":disabled")){divTag.addClass(options.disabledClass)}else{divTag.removeClass(options.disabledClass)}}else if($e.is(":checkbox")){var spanTag=$e.closest("span");var divTag=$e.closest("div");divTag.removeClass(options.hoverClass+" "+options.focusClass+" "+options.activeClass);spanTag.removeClass(options.checkedClass);if($e.is(":checked")){spanTag.addClass(options.checkedClass)}if($e.is(":disabled")){divTag.addClass(options.disabledClass)}else{divTag.removeClass(options.disabledClass)}}else if($e.is(":radio")){var spanTag=$e.closest("span");var divTag=$e.closest("div");divTag.removeClass(options.hoverClass+" "+options.focusClass+" "+options.activeClass);spanTag.removeClass(options.checkedClass);if($e.is(":checked")){spanTag.addClass(options.checkedClass)}if($e.is(":disabled")){divTag.addClass(options.disabledClass)}else{divTag.removeClass(options.disabledClass)}}else if($e.is(":file")){var divTag=$e.parent("div");var filenameTag=$e.siblings(options.filenameClass);btnTag=$e.siblings(options.fileBtnClass);divTag.removeClass(options.hoverClass+" "+options.focusClass+" "+options.activeClass);filenameTag.text($e.val());if($e.is(":disabled")){divTag.addClass(options.disabledClass)}else{divTag.removeClass(options.disabledClass)}}else if($e.is(":submit")||$e.is(":reset")||$e.is("button")||$e.is("a")||elem.is("input[type=button]")){var divTag=$e.closest("div");divTag.removeClass(options.hoverClass+" "+options.focusClass+" "+options.activeClass);if($e.is(":disabled")){divTag.addClass(options.disabledClass)}else{divTag.removeClass(options.disabledClass)}}})};return this.each(function(){if($.support.selectOpacity){var elem=$(this);if(elem.is("select")){if(elem.attr("multiple")!=true){if(elem.attr("size")==undefined||elem.attr("size")<=1){doSelect(elem)}}}else if(elem.is(":checkbox")){doCheckbox(elem)}else if(elem.is(":radio")){doRadio(elem)}else if(elem.is(":file")){doFile(elem)}else if(elem.is(":text, :password, input[type='email']")){doInput(elem)}else if(elem.is("textarea")){doTextarea(elem)}else if(elem.is("a")||elem.is(":submit")||elem.is(":reset")||elem.is("button")||elem.is("input[type=button]")){doButton(elem)}}})}})(jQuery);
