(function($){$.ui=$.ui||{};$.fn.tabs=function(a,b){if(a&&a.constructor==Object){b=a;a=null}b=b||{};a=a&&a.constructor==Number&&--a||0;return this.each(function(){new $.ui.tabs(this,$.extend(b,{initial:a}))})};$.each(['Add','Remove','Enable','Disable','Click','Load','Href'],function(i,c){$.fn['tabs'+c]=function(){var b=arguments;return this.each(function(){var a=$.ui.tabs.getInstance(this);a[c.toLowerCase()].apply(a,b)})}});$.fn.tabsSelected=function(){var a=-1;if(this[0]){var b=$.ui.tabs.getInstance(this[0]),$lis=$('li',this);a=$lis.index($lis.filter('.'+b.options.selectedClass)[0])}return a>=0?++a:-1};$.ui.tabs=function(a,b){this.source=a;this.options=$.extend({initial:0,event:'click',disabled:[],unselected:false,unselect:b.unselected?true:false,spinner:'Loading&#8230;',cache:false,idPrefix:'tab-',fxSpeed:'normal',add:function(){},remove:function(){},enable:function(){},disable:function(){},click:function(){},hide:function(){},show:function(){},load:function(){},tabTemplate:'<li><a href="#{href}"><span class="ui-tabs-left"><span class="ui-tabs-label">#{text}</span></span><span class="ui-tabs-right"></span></a></li>',panelTemplate:'<div></div>',navClass:'ui-tabs-nav',selectedClass:'ui-tabs-selected',hoverClass:'ui-tabs-hover',disabledClass:'ui-tabs-disabled',panelClass:'ui-tabs-panel',hideClass:'ui-tabs-hide',loadingClass:'ui-tabs-loading'},b);b.event+='.ui-tabs';var c='tabs'+$.ui.tabs.prototype.count++;$.ui.tabs.instances[c]=this;$.data(a,'tabsUUID',c);this.tabify(true)};$.ui.tabs.instances={};$.ui.tabs.getInstance=function(a){return $.ui.tabs.instances[$.data(a,'tabsUUID')]};$.extend($.ui.tabs.prototype,{count:0,tabId:function(a,i){return a.title?a.title.replace(/\s/g,'_'):this.options.idPrefix+this.count+'-'+(i+1)},tabify:function(d){this.$tabs=$('a:first-child',this.source);this.$panels=$([]);var e=this,o=this.options;this.$tabs.each(function(i,a){if(a.hash&&a.hash.replace('#','')){e.$panels=e.$panels.add(a.hash)}else{$.data(a,'href',a.href);var b=e.tabId(a,i);a.href='#'+b;e.$panels=e.$panels.add($('#'+b)[0]||$(o.panelTemplate).attr('id',b).addClass(o.panelClass).insertAfter(e.$panels[i-1]||e.source))}});if(d){this.$tabs.each(function(i,a){if(location.hash){if(a.hash==location.hash){o.initial=i;if($.browser.msie||$.browser.opera){var b=$(location.hash),toShowId=b.attr('id');b.attr('id','');setTimeout(function(){b.attr('id',toShowId)},500)}scrollTo(0,0);return false}}else if($(a).parents('li:eq(0)').is('li.'+o.selectedClass)){o.initial=i;return false}});$(this.source).is('.'+o.navClass)||$(this.source).addClass(o.navClass);this.$panels.each(function(i){var a=$(this);a.is('.'+o.panelClass)||a.addClass(o.panelClass);if(!o.unselected&&i==o.initial){!a.is('.'+o.hideClass)||a.removeClass(o.hideClass)}else{a.is('.'+o.hideClass)||a.addClass(o.hideClass)}});var f=$('li',this.source);f.each(function(i){var a=$(this);if(!o.unselected&&i==o.initial){a.is('.'+o.selectedClass)||a.addClass(o.selectedClass)}else{!a.is('.'+o.selectedClass)||a.removeClass(o.selectedClass)}});var g=this.$tabs[o.initial]&&$.data(this.$tabs[o.initial],'href');if(g){this.load(o.initial+1,g)}for(var i=0,position;position=o.disabled[i];i++){this.disable(position)}}var h={},showSpeed=o.fxShowSpeed||o.fxSpeed,hideAnim={},hideSpeed=o.fxHideSpeed||o.fxSpeed;if(o.fxSlide||o.fxFade){if(o.fxSlide){h['height']='show';hideAnim['height']='hide'}if(o.fxFade){h['opacity']='show';hideAnim['opacity']='hide'}}else{if(o.fxShow){h=o.fxShow}else{h['min-width']=0;showSpeed=1}if(o.fxHide){hideAnim=o.fxHide}else{hideAnim['min-width']=0;hideSpeed=1}}var j={display:'',overflow:'',height:''};if(!$.browser.msie){j['opacity']=''}function hideTab(a,b,c){b.animate(hideAnim,hideSpeed,function(){b.addClass(o.hideClass).css(j);if($.browser.msie&&hideAnim['opacity']){b[0].style.filter=''}o.hide(a,b[0],c&&c[0]||null);if(c){showTab(a,c,b)}})}function showTab(a,b,c){if(!(o.fxSlide||o.fxFade||o.fxShow)){b.css('display','block')}b.animate(h,showSpeed,function(){b.removeClass(o.hideClass).css(j);if($.browser.msie&&h['opacity']){b[0].style.filter=''}o.show(a,b[0],c&&c[0]||null)})}function switchTab(a,b,c){$(a).parents('li:eq(0)').addClass(o.selectedClass).siblings().removeClass(o.selectedClass);hideTab(a,b,c)}this.$tabs.unbind(o.event).bind(o.event,function(){var b=$(this).parent('li'),$hide=e.$panels.filter(':visible'),$show=$(this.hash);if((b.is('.'+o.selectedClass)&&!o.unselect)||b.is('.'+o.disabledClass)||o.click(this,$show[0],$hide[0])===false){this.blur();return false}if(o.unselect){if(b.is('.'+o.selectedClass)){b.removeClass(o.selectedClass);e.$panels.stop();hideTab(this,$hide);this.blur();return false}else if(!$hide.length){b.addClass(o.selectedClass);e.$panels.stop();showTab(this,$show);this.blur();return false}}e.$panels.stop();if($show.length){if($.data(this,'href')){var a=this;e.load(e.$tabs.index(this)+1,$.data(this,'href'),function(){switchTab(a,$hide,$show)})}else{switchTab(this,$hide,$show)}}else{throw'jQuery UI Tabs: Mismatching fragment identifier.';}this.blur();return false});this.$tabs.unbind('mouseover').bind('mouseover',function(){var a=$(this).parent('li');if((a.is('.'+o.selectedClass)&&!o.unselect)||a.is('.'+o.disabledClass)||a.is('.'+o.hoverClass)){return false}a.addClass(o.hoverClass);return false});this.$tabs.unbind('mouseout').bind('mouseout',function(){var a=$(this).parents('li');a.removeClass(o.hoverClass);return false})},add:function(a,b,c){if(a&&b){var o=this.options;c=c||this.$tabs.length;var d=$(o.tabTemplate.replace(/#\{href\}/,a).replace(/#\{text\}/,b));if(a.indexOf('#')==0){var e=a.replace('#','')}else{var e=this.tabId($('a:first-child',d)[0],c)}var f=$('#'+e);f=f.length&&f||$(o.panelTemplate).attr('id',e).addClass(o.panelClass).addClass(o.hideClass);if(c>=this.$tabs.length){d.appendTo(this.source);f.appendTo(this.source.parentNode)}else{d.insertBefore(this.$tabs.slice(c-1,c).parent('li'));f.insertBefore(this.$panels[c-1])}this.tabify();if(this.$tabs.length==1){d.addClass(o.selectedClass);f.removeClass(o.hideClass);var g=$.data(this.$tabs[0],'href');if(g){this.load(c+1,g)}}o.add(this.$tabs[c],this.$panels[c])}else{throw'jQuery UI Tabs: Not enough arguments to add tab.';}},remove:function(a){if(a&&a.constructor==Number){var b=this.$tabs.slice(a-1,a).parent('li').remove(),$panel=this.$panels.slice(a-1,a).remove(),o=this.options;if(b.is('.'+o.selectedClass)&&this.$tabs.length>1){this.click(a+(a<this.$tabs.length?1:-1))}this.tabify();o.remove(b.end()[0],$panel[0])}},enable:function(a){var b=this.$tabs.slice(a-1,a).parent('li'),o=this.options;b.removeClass(o.disabledClass);if($.browser.safari){b.css('display','inline-block');setTimeout(function(){b.css('display','block')},0)}o.enable(this.$tabs[a-1],this.$panels[a-1])},disable:function(a){var o=this.options;this.$tabs.slice(a-1,a).parent('li').addClass(o.disabledClass);o.disable(this.$tabs[a-1],this.$panels[a-1])},click:function(a){this.$tabs.slice(a-1,a).trigger(this.options.event)},load:function(b,c,d){var e=this,o=this.options,$a=this.$tabs.slice(b-1,b).addClass(o.loadingClass),a=$a[0];$span=$('span',a),text=$span.html();if(c&&c.constructor==Function){d=c}if(c){$.data(a,'href',c)}if(o.spinner){$span.html('<em>'+o.spinner+'</em>')}setTimeout(function(){$(a.hash).load(c,function(){if(o.spinner){$span.html(text)}$a.removeClass(o.loadingClass);if(d&&d.constructor==Function){d()}if(o.cache){$.removeData(a,'href')}o.load(e.$tabs[b-1],e.$panels[b-1])})},0)},href:function(a,b){$.data(this.$tabs.slice(a-1,a)[0],'href',b)}})})(jQuery);