(function(b){b.ui=b.ui||{};var c=[],a=-1;b.fn.extend({tab:function(g){var d=(typeof g=="string"),e=array.prototype.slice.call(arguments,1),f=this;if(d){this.each(function(){var h=c[b.data(this,"tab-instance-id")],i=(h&&b.isfunction(h[g]))?h[g].apply(h,e):h;if(typeof i!=="undefined"&&i!==true&&i!==false){f=i;return false}})}else{this.each(function(){var h=b.data(this,"tab-instance-id");if(typeof h!=="undefined"&&c[h]){c[h].destroy()}h=parseint(c.push({}),10)-1;b.data(this,"tab-instance-id",h);c[h]=new b.ui.tab(h,this,g);c[h].init()})}return f}});b.ui.tab=function(d,f,e){this.get_index=function(){return d};this.settings=b.extend({},b.ui.tab.defaults,e);this.el=b(f)};b.ui.tab.prototype={init:function(){this.triggers=this.el.find(this.settings.triggers);this.panels=this.el.find(this.settings.panels);this.index=this.get(this.settings.index);var d=this.triggers.length;if(this.index<0||this.index>d-1){this.index=0}if(this.settings.cookie_name&&b.cookie&&b.cookie(this.settings.cookie_name)){this.index=b.cookie(this.settings.cookie_name)}this.show();if(this.settings.callback.show){this.settings.callback.show.call(this)}this.handler()},show:function(){this.triggers=this.el.find(this.settings.triggers);this.panels=this.el.find(this.settings.panels);this.triggers.removeclass(this.settings.cur).eq(this.index).addclass(this.settings.cur);this.panels.hide().eq(this.index).show();if(this.settings.callback.select){this.settings.callback.select.call(this)}},handler:function(){var e=this.settings.evtype.tolowercase(),d=(e=="mouseover"||e=="mouseenter");this.el.delegate(this.settings.triggers,this.settings.evtype,{obj:this},function(i){var g=b(this),h=i.data.obj;if(g.hasclass(h.settings.cur)){return}var f=g.index();h.index=f;if(h.settings.cookie_name&&b.cookie){b.cookie(h.settings.cookie_name,f)}if(d){cleartimeout(h.timer);h.timer=settimeout(b.proxy(h.show,h),h.settings.delay)}else{h.show()}i.stoppropagation();return false});if(d){this.el.delegate(this.settings.triggers,"mouseleave",b.proxy(function(){cleartimeout(this.timer)},this))}},get:function(d){return typeof d=="function"?d.call(this):d},add:function(k){var m=k.callback||jquery.noop,f=k.trigger,d=k.panel,o=k.active,j=this.el.find(this.settings.triggers),i=this.el.find(this.settings.panels),h=j.length,g=k.index!=null&&!isnan(k.index)?k.index:h;g=math.max(0,math.min(g,h));var e=g==h?h-1:g,l=j.eq(e),p=i.eq(e);if(g==h){f.insertafter(l);d.insertafter(p)}else{f.insertbefore(l);d.insertbefore(p)}if(!!o){this.index=g;this.show()}m()},remove:function(f){var i=f.callback||jquery.noop,e=f.index!=null&&!isnan(f.index)?f.index:(this.index+1);var g=this.el.find(this.settings.triggers),h=g.length,d=this.el.find(this.settings.panels);if(h==1||e<=0||e>h){return}g.eq(e-1).remove();d.eq(e-1).remove();if(e==(this.index+1)){this.index=this.index>=1?this.index-1:0;this.show()}},set_focus:function(){var d=b.ui.tab._focused();if(d!==this){a=this.get_index()}},is_focused:function(){return a==this.get_index()},destroy:function(){var d,f=this.get_index(),e=this;if(this.is_focused()){for(d in c){if(c.hasownproperty(d)&&d!=f){c[d].set_focus();break}}}if(f===a){a=-1}c[f]=null;delete c[f]}};b.extend(b.ui.tab,{defaults:{delay:0,index:0,cur:"",triggers:"",panels:"",evtype:"click",cookie_name:false,callback:{show:false,select:false}},_focused:function(){return c[a]||null}})})(jquery);