(function(e){e.widget("ui.tabs",{_init:function(){this._tabify(true)},destroy:function(){var g=this.options;this.list.unbind(".tabs").removeClass(g.navClass).removeData("tabs");this.$tabs.each(function(){var f=e.data(this,"href.tabs");if(f){this.href=f}var h=e(this).unbind(".tabs");e.each(["href","load","cache"],function(b,c){h.removeData(c+".tabs")})});this.$lis.unbind(".tabs").add(this.$panels).each(function(){if(e.data(this,"destroy.tabs")){e(this).remove()}else{e(this).removeClass([g.tabClass,g.selectedClass,g.deselectableClass,g.disabledClass,g.panelClass,g.hideClass].join(" "))}});if(g.cookie){this._cookie(null,g.cookie)}},_setData:function(b,c){if((/^selected/).test(b)){this.select(c)}else{this.options[b]=c;this._tabify()}},length:function(){return this.$tabs.length},_tabId:function(b){return b.title&&b.title.replace(/\s/g,"_").replace(/[^A-Za-z0-9\-_:\.]/g,"")||this.options.idPrefix+e.data(b)},_sanitizeSelector:function(b){return b.replace(/:/g,"\\:")},_cookie:function(){var b=this.cookie||(this.cookie="ui-tabs-"+e.data(this.list[0]));return e.cookie.apply(null,[b].concat(e.makeArray(arguments)))},_tabify:function(i){this.list=this.element.is("div")?this.element.children("ul:first, ol:first").eq(0):this.element;this.$lis=e("li:has(a[href])",this.list);this.$tabs=this.$lis.map(function(){return e("a",this)[0]});this.$panels=e([]);var d=this,a=this.options;this.$tabs.each(function(b,c){if(c.hash&&c.hash.replace("#","")){d.$panels=d.$panels.add(d._sanitizeSelector(c.hash))}else{if(e(c).attr("href")!="#"){e.data(c,"href.tabs",c.href);e.data(c,"load.tabs",c.href);var f=d._tabId(c);c.href="#"+f;var h=e("#"+f);if(!h.length){h=e(a.panelTemplate).attr("id",f).addClass(a.panelClass).insertAfter(d.$panels[b-1]||d.list);h.data("destroy.tabs",true)}d.$panels=d.$panels.add(h)}else{a.disabled.push(b+1)}}});if(i){if(this.element.is("div")){this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all")}this.list.addClass(a.navClass);this.$lis.addClass(a.tabClass);this.$panels.addClass(a.panelClass);if(a.selected===undefined){if(location.hash){this.$tabs.each(function(b,c){if(c.hash==location.hash){a.selected=b;return false}})}else{if(a.cookie){var j=parseInt(d._cookie(),10);if(j&&d.$tabs[j]){a.selected=j}}else{if(d.$lis.filter("."+a.selectedClass).length){a.selected=d.$lis.index(d.$lis.filter("."+a.selectedClass)[0])}}}}a.selected=a.selected===null||a.selected!==undefined?a.selected:0;a.disabled=e.unique(a.disabled.concat(e.map(this.$lis.filter("."+a.disabledClass),function(b,c){return d.$lis.index(b)}))).sort();if(e.inArray(a.selected,a.disabled)!=-1){a.disabled.splice(e.inArray(a.selected,a.disabled),1)}this.$panels.addClass(a.hideClass);this.$lis.removeClass(a.selectedClass);if(a.selected!==null&&this.$tabs.length){this.$panels.eq(a.selected).removeClass(a.hideClass);var l=[a.selectedClass];if(a.deselectable){l.push(a.deselectableClass)}this.$lis.eq(a.selected).addClass(l.join(" "));var q=function(){d._trigger("show",null,d.ui(d.$tabs[a.selected],d.$panels[a.selected]))};if(e.data(this.$tabs[a.selected],"load.tabs")){this.load(a.selected,q)}else{q()}}var m=function(b,c){if(c.is(":not(."+a.disabledClass+")")){c.toggleClass("ui-state-"+b)}};this.$lis.bind("mouseover.tabs mouseout.tabs",function(){m("hover",e(this))});this.$tabs.bind("focus.tabs blur.tabs",function(){m("focus",e(this).parents("li:first"))});e(window).bind("unload",function(){d.$lis.add(d.$tabs).unbind(".tabs");d.$lis=d.$tabs=d.$panels=null})}else{a.selected=this.$lis.index(this.$lis.filter("."+a.selectedClass)[0])}if(a.cookie){this._cookie(a.selected,a.cookie)}for(var n=0,r;r=this.$lis[n];n++){e(r)[e.inArray(n,a.disabled)!=-1&&!e(r).hasClass(a.selectedClass)?"addClass":"removeClass"](a.disabledClass)}if(a.cache===false){this.$tabs.removeData("cache.tabs")}var k,o;if(a.fx){if(a.fx.constructor==Array){k=a.fx[0];o=a.fx[1]}else{k=o=a.fx}}function t(b,c){b.css({display:""});if(e.browser.msie&&c.opacity){b[0].style.removeAttribute("filter")}}var s=o?function(b,c){c.animate(o,o.duration||"normal",function(){c.removeClass(a.hideClass);t(c,o);d._trigger("show",null,d.ui(b,c[0]))})}:function(b,c){c.removeClass(a.hideClass);d._trigger("show",null,d.ui(b,c[0]))};var u=k?function(b,c,f){c.animate(k,k.duration||"normal",function(){c.addClass(a.hideClass);t(c,k);if(f){s(b,f,c)}})}:function(b,c,f){c.addClass(a.hideClass);if(f){s(b,f)}};function v(b,c,f,h){var g=[a.selectedClass];if(a.deselectable){g.push(a.deselectableClass)}c.removeClass("ui-state-default").addClass(g.join(" ")).siblings().removeClass(g.join(" ")).addClass("ui-state-default");u(b,f,h)}this.$tabs.unbind(".tabs").bind(a.event+".tabs",function(){var b=e(this).parents("li:eq(0)"),c=d.$panels.filter(":visible"),f=e(d._sanitizeSelector(this.hash));if((b.hasClass("ui-state-active")&&!a.deselectable)||b.hasClass(a.disabledClass)||e(this).hasClass(a.loadingClass)||d._trigger("select",null,d.ui(this,f[0]))===false){this.blur();return false}a.selected=d.$tabs.index(this);if(a.deselectable){if(b.hasClass("ui-state-active")){d.options.selected=null;b.removeClass([a.selectedClass,a.deselectableClass].join(" ")).addClass("ui-state-default");d.$panels.stop();u(this,c);this.blur();return false}else{if(!c.length){d.$panels.stop();var h=this;d.load(d.$tabs.index(this),function(){b.addClass([a.selectedClass,a.deselectableClass].join(" ")).removeClass("ui-state-default");s(h,f)});this.blur();return false}}}if(a.cookie){d._cookie(a.selected,a.cookie)}d.$panels.stop();if(f.length){var h=this;d.load(d.$tabs.index(this),c.length?function(){v(h,b,c,f)}:function(){b.addClass(a.selectedClass).removeClass("ui-state-default");s(h,f)})}else{throw"jQuery UI Tabs: Mismatching fragment identifier."}if(e.browser.msie){this.blur()}return false});if(a.event!="click"){this.$tabs.bind("click.tabs",function(){return false})}},add:function(f,h,g){if(g==undefined){g=this.$tabs.length}var i=this.options;var d=e(i.tabTemplate.replace(/#\{href\}/g,f).replace(/#\{label\}/g,h));d.addClass(i.tabClass).data("destroy.tabs",true);var a=f.indexOf("#")==0?f.replace("#",""):this._tabId(e("a:first-child",d)[0]);var j=e("#"+a);if(!j.length){j=e(i.panelTemplate).attr("id",a).addClass(i.hideClass).data("destroy.tabs",true)}j.addClass(i.panelClass);if(g>=this.$lis.length){d.appendTo(this.list);j.appendTo(this.list[0].parentNode)}else{d.insertBefore(this.$lis[g]);j.insertBefore(this.$panels[g])}i.disabled=e.map(i.disabled,function(b,c){return b>=g?++b:b});this._tabify();if(this.$tabs.length==1){d.addClass(i.selectedClass);j.removeClass(i.hideClass);var l=e.data(this.$tabs[0],"load.tabs");if(l){this.load(g,l)}}this._trigger("add",null,this.ui(this.$tabs[g],this.$panels[g]))},remove:function(f){var h=this.options,g=this.$lis.eq(f).remove(),i=this.$panels.eq(f).remove();if(g.hasClass(h.selectedClass)&&this.$tabs.length>1){this.select(f+(f+1<this.$tabs.length?1:-1))}h.disabled=e.map(e.grep(h.disabled,function(b,c){return b!=f}),function(b,c){return b>=f?--b:b});this._tabify();this._trigger("remove",null,this.ui(g.find("a")[0],i[0]))},enable:function(f){var h=this.options;if(e.inArray(f,h.disabled)==-1){return}var g=this.$lis.eq(f).removeClass(h.disabledClass);if(e.browser.safari){g.css("display","inline-block");setTimeout(function(){g.css("display","block")},0)}h.disabled=e.grep(h.disabled,function(b,c){return b!=f});this._trigger("enable",null,this.ui(this.$tabs[f],this.$panels[f]))},disable:function(b){var c=this,f=this.options;if(b!=f.selected){this.$lis.eq(b).addClass(f.disabledClass);f.disabled.push(b);f.disabled.sort();this._trigger("disable",null,this.ui(this.$tabs[b],this.$panels[b]))}},select:function(b){if(typeof b=="string"){b=this.$tabs.index(this.$tabs.filter("[href$="+b+"]")[0])}this.$tabs.eq(b).trigger(this.options.event+".tabs")},load:function(h,g){var i=this,d=this.options,a=this.$tabs.eq(h),j=a[0],l=g==undefined||g===false,q=a.data("load.tabs");g=g||function(){};if(!q||!l&&e.data(j,"cache.tabs")){g();return}var m=function(b){var c=e(b),f=c.find("*:last");return f.length&&f.is(":not(img)")&&f||c};var n=function(){i.$tabs.filter("."+d.loadingClass).removeClass(d.loadingClass).each(function(){if(d.spinner){m(this).parent().html(m(this).data("label.tabs"))}});i.xhr=null};if(d.spinner){var r=m(j).html();m(j).wrapInner("<em></em>").find("em").data("label.tabs",r).html(d.spinner)}var k=e.extend({},d.ajaxOptions,{url:q,success:function(b,c){e(i._sanitizeSelector(j.hash)).html(b);n();if(d.cache){e.data(j,"cache.tabs",true)}i._trigger("load",null,i.ui(i.$tabs[h],i.$panels[h]));try{d.ajaxOptions.success(b,c)}catch(p){}g()}});if(this.xhr){this.xhr.abort();n()}a.addClass(d.loadingClass);i.xhr=e.ajax(k)},url:function(b,c){this.$tabs.eq(b).removeData("cache.tabs").data("load.tabs",c)},ui:function(b,c){return{options:this.options,tab:b,panel:c,index:this.$tabs.index(b)}}});e.extend(e.ui.tabs,{version:"1.6rc5",getter:"length",defaults:{ajaxOptions:null,cache:false,cookie:null,deselectable:false,deselectableClass:"ui-tabs-deselectable",disabled:[],disabledClass:"ui-state-disabled",event:"click",fx:null,hideClass:"ui-tabs-hide",idPrefix:"ui-tabs-",loadingClass:"ui-tabs-loading",navClass:"ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all",tabClass:"ui-state-default ui-corner-top",panelClass:"ui-tabs-panel ui-widget-content ui-corner-bottom",panelTemplate:"<div></div>",selectedClass:"ui-tabs-selected ui-state-active",spinner:"Loading&#8230;",tabTemplate:'<li><a href="#{href}"><span>#{label}</span></a></li>'}});e.extend(e.ui.tabs.prototype,{rotation:null,rotate:function(c,f){f=f||false;var h=this,g=this.options.selected;function i(){h.rotation=setInterval(function(){g=++g<h.$tabs.length?g:0;h.select(g)},c)}function d(b){if(!b||b.clientX){clearInterval(h.rotation)}}if(c){i();if(!f){this.$tabs.bind(this.options.event+".tabs",d)}else{this.$tabs.bind(this.options.event+".tabs",function(){d();g=h.options.selected;i()})}}else{d();this.$tabs.unbind(this.options.event+".tabs",d)}}})})(jQuery);
