(function(b){b.extend({tabs:{remoteCount:0}});b.fn.tabs=function(d,e){if(typeof d=="object"){e=d}e=b.extend({initial:(d&&typeof d=="number"&&d>0)?--d:0,disabled:null,bookmarkable:b.ajaxHistory?true:false,remote:false,spinner:"Loading&#8230;",hashPrefix:"remote-tab-",fxFade:null,fxSlide:null,fxShow:null,fxHide:null,fxSpeed:"normal",fxShowSpeed:null,fxHideSpeed:null,fxAutoHeight:false,onClick:null,onHide:null,onShow:null,navClass:"tabs-nav",selectedClass:"tabs-selected",disabledClass:"tabs-disabled",containerClass:"tabs-container",hideClass:"tabs-hide",loadingClass:"tabs-loading",tabStruct:"div"},e||{});b.browser.msie6=b.browser.msie&&(b.browser.version&&b.browser.version<7||/MSIE 6.0/.test(navigator.userAgent));function f(){scrollTo(0,0)}return this.each(function(){var r=this;var p=b("ul."+e.navClass,r);p=p.size()&&p||b(">ul:eq(0)",r);var A=b("a",p);if(e.remote){A.each(function(){var B=e.hashPrefix+(++b.tabs.remoteCount),k="#"+B,i=this.href;this.href=k;b('<div id="'+B+'" class="'+e.containerClass+'"></div>').appendTo(r);b(this).bind("loadRemoteTab",function(F,G){var C=b(this).addClass(e.loadingClass),D=b("span",this)[0],E=D.innerHTML;if(e.spinner){D.innerHTML="<em>"+e.spinner+"</em>"}setTimeout(function(){b(k).load(i,function(){if(e.spinner){D.innerHTML=E}C.removeClass(e.loadingClass);G&&G()})},0)})})}var t=b("div."+e.containerClass,r);t=t.size()&&t||b(">"+e.tabStruct,r);p.is("."+e.navClass)||p.addClass(e.navClass);t.each(function(){var i=b(this);i.is("."+e.containerClass)||i.addClass(e.containerClass)});var n=b("li",p).index(b("li."+e.selectedClass,p)[0]);if(n>=0){e.initial=n}if(location.hash){A.each(function(B){if(this.hash==location.hash){e.initial=B;if((b.browser.msie||b.browser.opera)&&!e.remote){var k=b(location.hash);var C=k.attr("id");k.attr("id","");setTimeout(function(){k.attr("id",C)},500)}return false}})}if(b.browser.msie){f()}t.filter(":eq("+e.initial+")").show().end().not(":eq("+e.initial+")").addClass(e.hideClass);b("li",p).removeClass(e.selectedClass).eq(e.initial).addClass(e.selectedClass);A.eq(e.initial).trigger("loadRemoteTab").end();if(e.fxAutoHeight){var z=function(i){var k=b.map(t.get(),function(C){var B,D=b(C);if(i){if(b.browser.msie6){C.style.removeExpression("behaviour");C.style.height="";C.minHeight=null}B=D.css({"min-height":""}).height()}else{B=D.height()}return B}).sort(function(C,B){return B-C});if(b.browser.msie6){t.each(function(){this.minHeight=k[0]+"px";this.style.setExpression("behaviour",'this.style.height = this.minHeight ? this.minHeight : "1px"')})}else{t.css({"min-height":k[0]+"px"})}};z();var q=r.offsetWidth;var y=r.offsetHeight;var j=b("#tabs-watch-font-size").get(0)||b('<span id="tabs-watch-font-size">M</span>').css({display:"block",position:"absolute",visibility:"hidden"}).appendTo(document.body).get(0);var s=j.offsetHeight;setInterval(function(){var k=r.offsetWidth;var B=r.offsetHeight;var i=j.offsetHeight;if(B>y||k!=q||i!=s){z((k>q||i<s));q=k;y=B;s=i}},50)}var l={},u={},h=e.fxShowSpeed||e.fxSpeed,o=e.fxHideSpeed||e.fxSpeed;if(e.fxSlide||e.fxFade){if(e.fxSlide){l.height="show";u.height="hide"}if(e.fxFade){l.opacity="show";u.opacity="hide"}}else{if(e.fxShow){l=e.fxShow}else{l["min-width"]=0;h=1}if(e.fxHide){u=e.fxHide}else{u["min-width"]=0;o=1}}var m=e.onClick,g=e.onHide,v=e.onShow;A.bind("triggerTab",function(){var i=b(this).parents("li:eq(0)");if(r.locked||i.is("."+e.selectedClass)||i.is("."+e.disabledClass)){return false}var B=this.hash;if(b.browser.msie){b(this).trigger("click");if(e.bookmarkable){b.ajaxHistory.update(B);location.hash=B.replace("#","")}}else{if(b.browser.safari){var k=b('<form action="'+B+'"><div><input type="submit" value="h" /></div></form>').get(0);k.submit();b(this).trigger("click");if(e.bookmarkable){b.ajaxHistory.update(B)}}else{if(e.bookmarkable){location.hash=B.replace("#","")}else{b(this).trigger("click")}}}});A.bind("disableTab",function(){var i=b(this).parents("li:eq(0)");if(b.browser.safari){i.animate({opacity:0},1,function(){i.css({opacity:""})})}i.addClass(e.disabledClass)});if(e.disabled&&e.disabled.length){for(var x=0,w=e.disabled.length;x<w;x++){A.eq(--e.disabled[x]).trigger("disableTab").end()}}A.bind("enableTab",function(){var i=b(this).parents("li:eq(0)");i.removeClass(e.disabledClass);if(b.browser.safari){i.animate({opacity:1},1,function(){i.css({opacity:""})})}});A.bind("click",function(D){var I=D.clientX;var E=this,J=b(this).parents("li:eq(0)"),k=b(this.hash),F=t.filter(":visible");if(r.locked||J.is("."+e.selectedClass)||J.is("."+e.disabledClass)||typeof m=="function"&&m(this,k[0],F[0])===false){this.blur();return false}r.locked=true;if(k.size()){if(b.browser.msie&&e.bookmarkable){var i=this.hash.replace("#","");k.attr("id","");setTimeout(function(){k.attr("id",i)},0)}var C={display:"",overflow:"",height:""};if(!b.browser.msie){C.opacity=""}function B(){if(e.bookmarkable&&I){b.ajaxHistory.update(E.hash)}F.animate(u,o,function(){b(E).parents("li:eq(0)").addClass(e.selectedClass).siblings().removeClass(e.selectedClass);F.addClass(e.hideClass).css(C);if(typeof g=="function"){g(E,k[0],F[0])}if(!(e.fxSlide||e.fxFade||e.fxShow)){k.css("display","block")}k.animate(l,h,function(){k.removeClass(e.hideClass).css(C);if(b.browser.msie){F[0].style.filter="";k[0].style.filter=""}if(typeof v=="function"){v(E,k[0],F[0])}r.locked=null})})}if(!e.remote){B()}else{b(E).trigger("loadRemoteTab",[B])}}else{alert("There is no such container.")}var H=window.pageXOffset||document.documentElement&&document.documentElement.scrollLeft||document.body.scrollLeft||0;var G=window.pageYOffset||document.documentElement&&document.documentElement.scrollTop||document.body.scrollTop||0;G=b(window).scrollTop();setTimeout(function(){window.scrollTo(H,G)},1000);this.blur();return e.bookmarkable&&!!I});if(e.bookmarkable){b.ajaxHistory.initialize(function(){A.eq(e.initial).trigger("click").end()})}})};var c=["triggerTab","disableTab","enableTab"];for(var a=0;a<c.length;a++){b.fn[c[a]]=(function(d){return function(e){return this.each(function(){var g=b("ul.tabs-nav",this);g=g.size()&&g||b(">ul:eq(0)",this);var f;if(!e||typeof e=="number"){f=b("li a",g).eq((e&&e>0&&e-1||0))}else{if(typeof e=="string"){f=b('li a[@href$="#'+e+'"]',g)}}f.trigger(d)})}})(c[a])}b.fn.activeTab=function(){var d=[];this.each(function(){var f=b("ul.tabs-nav",this);f=f.size()&&f||b(">ul:eq(0)",this);var e=b("li",f);d.push(e.index(e.filter(".tabs-selected")[0])+1)});return d[0]}})(jQuery);