(function(a){a.ui=a.ui||{};a.fn.tabs=function(){var c=typeof arguments[0]=="string"&&arguments[0];var b=c&&Array.prototype.slice.call(arguments,1)||arguments;return this.each(function(){if(c){var d=a.data(this,"ui-tabs");d[c].apply(d,b)}else{new a.ui.tabs(this,b[0]||{})}})};a.ui.tabs=function(d,c){var b=this;this.element=d;this.options=a.extend({selected:0,unselect:c.selected===null,event:"click",disabled:[],cookie:null,spinner:"Loading&#8230;",cache:false,idPrefix:"ui-tabs-",ajaxOptions:{},fx:null,tabTemplate:'<li><a href="#{href}"><span>#{label}</span></a></li>',panelTemplate:"<div></div>",navClass:"ui-tabs-nav",selectedClass:"ui-tabs-selected",unselectClass:"ui-tabs-unselect",disabledClass:"ui-tabs-disabled",panelClass:"ui-tabs-panel",hideClass:"ui-tabs-hide",loadingClass:"ui-tabs-loading"},c);this.options.event+=".ui-tabs";this.options.cookie=a.cookie&&a.cookie.constructor==Function&&this.options.cookie;a(d).bind("setData.ui-tabs",function(f,e,g){b.options[e]=g;this.tabify()}).bind("getData.ui-tabs",function(f,e){return b.options[e]});a.data(d,"ui-tabs",this);this.tabify(true)};a.extend(a.ui.tabs.prototype,{tabId:function(b){return b.title&&b.title.replace(/\s/g,"_").replace(/[^A-Za-z0-9\-_:\.]/g,"")||this.options.idPrefix+a.data(b)},ui:function(c,b){return{instance:this,options:this.options,tab:c,panel:b}},tabify:function(r){this.$lis=a("li:has(a[href])",this.element);this.$tabs=this.$lis.map(function(){return a("a",this)[0]});this.$panels=a([]);var s=this,e=this.options;this.$tabs.each(function(o,n){if(n.hash&&n.hash.replace("#","")){s.$panels=s.$panels.add(n.hash)}else{if(a(n).attr("href")!="#"){a.data(n,"href.ui-tabs",n.href);a.data(n,"load.ui-tabs",n.href);var u=s.tabId(n);n.href="#"+u;var t=a("#"+u);if(!t.length){t=a(e.panelTemplate).attr("id",u).addClass(e.panelClass).insertAfter(s.$panels[o-1]||s.element);t.data("destroy.ui-tabs",true)}s.$panels=s.$panels.add(t)}else{e.disabled.push(o+1)}}});if(r){a(this.element).hasClass(e.navClass)||a(this.element).addClass(e.navClass);this.$panels.each(function(){var i=a(this);i.hasClass(e.panelClass)||i.addClass(e.panelClass)});for(var j=0,m;m=e.disabled[j];j++){this.disable(m)}this.$tabs.each(function(u,n){if(location.hash){if(n.hash==location.hash){e.selected=u;if(a.browser.msie||a.browser.opera){var t=a(location.hash),v=t.attr("id");t.attr("id","");setTimeout(function(){t.attr("id",v)},500)}scrollTo(0,0);return false}}else{if(e.cookie){var o=parseInt(a.cookie("ui-tabs"+a.data(s.element)),10);if(o&&s.$tabs[o]){e.selected=o;return false}}else{if(s.$lis.eq(u).hasClass(e.selectedClass)){e.selected=u;return false}}}});var f=this.$lis.length;while(this.$lis.eq(e.selected).hasClass(e.disabledClass)&&f){e.selected=++e.selected<this.$lis.length?e.selected:0;f--}if(!f){e.unselect=true}this.$panels.addClass(e.hideClass);this.$lis.removeClass(e.selectedClass);if(!e.unselect){this.$panels.eq(e.selected).show().removeClass(e.hideClass);this.$lis.eq(e.selected).addClass(e.selectedClass)}var d=!e.unselect&&a.data(this.$tabs[e.selected],"load.ui-tabs");if(d){this.load(e.selected,d)}if(!(/^click/).test(e.event)){this.$tabs.bind("click",function(i){i.preventDefault()})}}var c,l,b={"min-width":0,duration:1},g="normal";if(e.fx&&e.fx.constructor==Array){c=e.fx[0]||b,l=e.fx[1]||b}else{c=l=e.fx||b}var k={display:"",overflow:"",height:""};if(!a.browser.msie){k.opacity=""}function q(n,i,o){i.animate(c,c.duration||g,function(){i.addClass(e.hideClass).css(k);if(a.browser.msie&&c.opacity){i[0].style.filter=""}if(o){p(n,o,i)}})}function p(n,o,i){if(l===b){o.css("display","block")}o.animate(l,l.duration||g,function(){o.removeClass(e.hideClass).css(k);if(a.browser.msie&&l.opacity){o[0].style.filter=""}a(s.element).triggerHandler("show.ui-tabs",[s.ui(n,o[0])])})}function h(n,t,i,o){t.addClass(e.selectedClass).siblings().removeClass(e.selectedClass);q(n,i,o)}this.$tabs.unbind(e.event).bind(e.event,function(){var t=a(this).parents("li:eq(0)"),i=s.$panels.filter(":visible"),o=a(this.hash);if((t.hasClass(e.selectedClass)&&!e.unselect)||t.hasClass(e.disabledClass)||a(s.element).triggerHandler("select.ui-tabs",[s.ui(this,o[0])])===false){this.blur();return false}s.options.selected=s.$tabs.index(this);if(e.unselect){if(t.hasClass(e.selectedClass)){s.options.selected=null;t.removeClass(e.selectedClass);s.$panels.stop();q(this,i);this.blur();return false}else{if(!i.length){s.$panels.stop();var n=this;s.load(s.$tabs.index(this),function(){t.addClass(e.selectedClass).addClass(e.unselectClass);p(n,o)});this.blur();return false}}}if(e.cookie){a.cookie("ui-tabs"+a.data(s.element),s.options.selected,e.cookie)}s.$panels.stop();if(o.length){var n=this;s.load(s.$tabs.index(this),function(){h(n,t,i,o)})}else{throw"jQuery UI Tabs: Mismatching fragment identifier."}if(a.browser.msie){this.blur()}return false})},add:function(e,d,c){if(e&&d){c=c||this.$tabs.length;var g=this.options;var i=a(g.tabTemplate.replace(/#\{href\}/,e).replace(/#\{label\}/,d));i.data("destroy.ui-tabs",true);var h=e.indexOf("#")==0?e.replace("#",""):this.tabId(a("a:first-child",i)[0]);var f=a("#"+h);if(!f.length){f=a(g.panelTemplate).attr("id",h).addClass(g.panelClass).addClass(g.hideClass);f.data("destroy.ui-tabs",true)}if(c>=this.$lis.length){i.appendTo(this.element);f.appendTo(this.element.parentNode)}else{i.insertBefore(this.$lis[c]);f.insertBefore(this.$panels[c])}this.tabify();if(this.$tabs.length==1){i.addClass(g.selectedClass);f.removeClass(g.hideClass);var b=a.data(this.$tabs[0],"load.ui-tabs");if(b){this.load(c,b)}}a(this.element).triggerHandler("add.ui-tabs",[this.ui(this.$tabs[c],this.$panels[c])])}else{throw"jQuery UI Tabs: Not enough arguments to add tab."}},remove:function(b){if(b&&b.constructor==Number){var d=this.options,e=this.$lis.eq(b).remove(),c=this.$panels.eq(b).remove();if(e.hasClass(d.selectedClass)&&this.$tabs.length>1){this.click(b+(b<this.$tabs.length?1:-1))}this.tabify();a(this.element).triggerHandler("remove.ui-tabs",[this.ui(e.find("a")[0],c[0])])}},enable:function(c){var b=this,d=this.options,e=this.$lis.eq(c);e.removeClass(d.disabledClass);if(a.browser.safari){e.css("display","inline-block");setTimeout(function(){e.css("display","block")},0)}d.disabled=a.map(this.$lis.filter("."+d.disabledClass),function(g,f){return b.$lis.index(g)});a(this.element).triggerHandler("enable.ui-tabs",[this.ui(this.$tabs[c],this.$panels[c])])},disable:function(c){var b=this,d=this.options;this.$lis.eq(c).addClass(d.disabledClass);d.disabled=a.map(this.$lis.filter("."+d.disabledClass),function(f,e){return b.$lis.index(f)});a(this.element).triggerHandler("disable.ui-tabs",[this.ui(this.$tabs[c],this.$panels[c])])},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)},load:function(f,k){var l=this,c=this.options,d=this.$tabs.eq(f),j=d[0];var b=d.data("load.ui-tabs");if(!b){typeof k=="function"&&k();return}if(c.spinner){var g=a("span",j),i=g.html();g.html("<em>"+c.spinner+"</em>")}var h=function(){l.$tabs.filter("."+c.loadingClass).each(function(){a(this).removeClass(c.loadingClass);if(c.spinner){a("span",this).html(i)}});l.xhr=null};var e=a.extend({},c.ajaxOptions,{url:b,success:function(n,m){a(j.hash).html(n);h();typeof k=="function"&&k();if(c.cache){a.removeData(j,"load.ui-tabs")}a(l.element).triggerHandler("load.ui-tabs",[l.ui(l.$tabs[f],l.$panels[f])]);c.ajaxOptions.success&&c.ajaxOptions.success(n,m)}});if(this.xhr){this.xhr.abort();h()}d.addClass(c.loadingClass);setTimeout(function(){l.xhr=a.ajax(e)},0)},url:function(c,b){this.$tabs.eq(c).data("load.ui-tabs",b)},destroy:function(){var b=this.options;a(this.element).unbind(".ui-tabs").removeClass(b.navClass).removeData("ui-tabs");this.$tabs.each(function(){var c=a.data(this,"href.ui-tabs");if(c){this.href=c}a(this).unbind(".ui-tabs").removeData("href.ui-tabs").removeData("load.ui-tabs")});this.$lis.add(this.$panels).each(function(){if(a.data(this,"destroy.ui-tabs")){a(this).remove()}else{a(this).removeClass([b.selectedClass,b.unselectClass,b.disabledClass,b.panelClass,b.hideClass].join(" "))}})}})})(jQuery);
