!function(t,s,a){var e={active:null,event:"click",disabled:[],collapsible:"accordion",startCollapsed:!1,rotate:!1,setHash:!1,animation:"default",animationQueue:!1,duration:500,fluidHeight:!0,scrollToAccordion:!1,scrollToAccordionOnLoad:!0,scrollToAccordionOffset:0,accordionTabElement:"<div></div>",navigationContainer:"",click:function(){},activate:function(){},deactivate:function(){},load:function(){},activateState:function(){},classes:{stateDefault:"r-tabs-state-default",stateActive:"r-tabs-state-active",stateDisabled:"r-tabs-state-disabled",stateExcluded:"r-tabs-state-excluded",container:"r-tabs",ul:"r-tabs-nav",tab:"r-tabs-tab",anchor:"r-tabs-anchor",panel:"r-tabs-panel",accordionTitle:"r-tabs-accordion-title"}};function o(s,a){this.element=s,this.$element=t(s),this.tabs=[],this.state="",this.rotateInterval=0,this.$queue=t({}),this.options=t.extend({},e,a),this.init()}o.prototype.init=function(){var a=this;this.tabs=this._loadElements(),this._loadClasses(),this._loadEvents(),t(s).on("resize",function(t){a._setState(t),!0!==a.options.fluidHeight&&a._equaliseHeights()}),t(s).on("hashchange",function(t){var e=a._getTabRefBySelector(s.location.hash),o=a._getTab(e);e>=0&&!o._ignoreHashChange&&!o.disabled&&a._openTab(t,a._getTab(e),!0)}),!1!==this.options.rotate&&this.startRotation(),!0!==this.options.fluidHeight&&a._equaliseHeights(),this.$element.bind("tabs-click",function(t,s){a.options.click.call(this,t,s)}),this.$element.bind("tabs-activate",function(t,s){a.options.activate.call(this,t,s)}),this.$element.bind("tabs-deactivate",function(t,s){a.options.deactivate.call(this,t,s)}),this.$element.bind("tabs-activate-state",function(t,s){a.options.activateState.call(this,t,s)}),this.$element.bind("tabs-load",function(t){var s;a._setState(t),!0===a.options.startCollapsed||"accordion"===a.options.startCollapsed&&"accordion"===a.state||(s=a._getStartTab(),a._openTab(t,s),a.options.load.call(this,t,s))}),this.$element.trigger("tabs-load")},o.prototype._loadElements=function(){var s=this,a=""===s.options.navigationContainer?this.$element.children("ul:first"):this.$element.find(s.options.navigationContainer).children("ul:first"),e=[],o=0;return this.$element.addClass(s.options.classes.container),a.addClass(s.options.classes.ul),t("li",a).each(function(){var a,i,n,l,r,c=t(this);if(!c.hasClass(s.options.classes.stateExcluded)){r=(a=t("a",c)).attr("href"),i=t(r),n=t(s.options.accordionTabElement).insertBefore(i),l=t("<a></a>").attr("href",r).html(a.html()).appendTo(n);var h={_ignoreHashChange:!1,id:o,disabled:-1!==t.inArray(o,s.options.disabled),tab:t(this),anchor:t("a",c),panel:i,selector:r,accordionTab:n,accordionAnchor:l,active:!1};o++,e.push(h)}}),e},o.prototype._loadClasses=function(){for(var t=0;t<this.tabs.length;t++)this.tabs[t].tab.addClass(this.options.classes.stateDefault).addClass(this.options.classes.tab),this.tabs[t].anchor.addClass(this.options.classes.anchor),this.tabs[t].panel.addClass(this.options.classes.stateDefault).addClass(this.options.classes.panel),this.tabs[t].accordionTab.addClass(this.options.classes.accordionTitle),this.tabs[t].accordionAnchor.addClass(this.options.classes.anchor),this.tabs[t].disabled&&(this.tabs[t].tab.removeClass(this.options.classes.stateDefault).addClass(this.options.classes.stateDisabled),this.tabs[t].accordionTab.removeClass(this.options.classes.stateDefault).addClass(this.options.classes.stateDisabled))},o.prototype._loadEvents=function(){for(var t=this,a=function(a){var e=t._getCurrentTab(),o=a.data.tab;a.preventDefault(),o.tab.trigger("tabs-click",o),o.disabled||(t.options.setHash&&(history.pushState?(s.location.origin||(s.location.origin=s.location.protocol+"//"+s.location.hostname+(s.location.port?":"+s.location.port:"")),history.pushState(null,null,s.location.origin+s.location.pathname+s.location.search+o.selector)):s.location.hash=o.selector),a.data.tab._ignoreHashChange=!0,(e!==o||t._isCollapisble())&&(t._closeTab(a,e),e===o&&t._isCollapisble()||t._openTab(a,o,!1,!0)))},e=0;e<this.tabs.length;e++)this.tabs[e].anchor.on(t.options.event,{tab:t.tabs[e]},a),this.tabs[e].accordionAnchor.on(t.options.event,{tab:t.tabs[e]},a)},o.prototype._getStartTab=function(){var t=this._getTabRefBySelector(s.location.hash);return t>=0&&!this._getTab(t).disabled?this._getTab(t):this.options.active>0&&!this._getTab(this.options.active).disabled?this._getTab(this.options.active):this._getTab(0)},o.prototype._setState=function(s){var a,e=t("ul:first",this.$element),o=this.state,i="string"==typeof this.options.startCollapsed;e.is(":visible")?this.state="tabs":this.state="accordion",this.state!==o&&(this.$element.trigger("tabs-activate-state",{oldState:o,newState:this.state}),o&&i&&this.options.startCollapsed!==this.state&&void 0===this._getCurrentTab()&&(a=this._getStartTab(s),this._openTab(s,a)))},o.prototype._openTab=function(s,a,e,o){var i,n=this;e&&this._closeTab(s,this._getCurrentTab()),o&&this.rotateInterval>0&&this.stopRotation(),a.active=!0,a.tab.removeClass(n.options.classes.stateDefault).addClass(n.options.classes.stateActive),a.accordionTab.removeClass(n.options.classes.stateDefault).addClass(n.options.classes.stateActive),n._doTransition(a.panel,n.options.animation,"open",function(){var e="tabs-load"!==s.type||n.options.scrollToAccordionOnLoad;a.panel.removeClass(n.options.classes.stateDefault).addClass(n.options.classes.stateActive),"accordion"!==n.getState()||!n.options.scrollToAccordion||n._isInView(a.accordionTab)&&"default"===n.options.animation||!e||(i=a.accordionTab.offset().top-n.options.scrollToAccordionOffset,"default"!==n.options.animation&&n.options.duration>0?t("html, body").animate({scrollTop:i},n.options.duration):t("html, body").scrollTop(i))}),this.$element.trigger("tabs-activate",a)},o.prototype._closeTab=function(t,s){var a,e=this,o="string"==typeof e.options.animationQueue;void 0!==s&&(a=!(!o||e.getState()!==e.options.animationQueue)||!o&&e.options.animationQueue,s.active=!1,s.tab.removeClass(e.options.classes.stateActive).addClass(e.options.classes.stateDefault),e._doTransition(s.panel,e.options.animation,"close",function(){s.accordionTab.removeClass(e.options.classes.stateActive).addClass(e.options.classes.stateDefault),s.panel.removeClass(e.options.classes.stateActive).addClass(e.options.classes.stateDefault)},!a),this.$element.trigger("tabs-deactivate",s))},o.prototype._doTransition=function(t,s,a,e,o){var i,n=this;switch(s){case"slide":i="open"===a?"slideDown":"slideUp";break;case"fade":i="open"===a?"fadeIn":"fadeOut";break;default:i="open"===a?"show":"hide",n.options.duration=0}this.$queue.queue("responsive-tabs",function(o){t[i]({duration:n.options.duration,complete:function(){e.call(t,s,a),o()}})}),("open"===a||o)&&this.$queue.dequeue("responsive-tabs")},o.prototype._isCollapisble=function(){return"boolean"==typeof this.options.collapsible&&this.options.collapsible||"string"==typeof this.options.collapsible&&this.options.collapsible===this.getState()},o.prototype._getTab=function(t){return this.tabs[t]},o.prototype._getTabRefBySelector=function(t){for(var s=0;s<this.tabs.length;s++)if(this.tabs[s].selector===t)return s;return-1},o.prototype._getCurrentTab=function(){return this._getTab(this._getCurrentTabRef())},o.prototype._getNextTabRef=function(t){var s=t||this._getCurrentTabRef(),a=s===this.tabs.length-1?0:s+1;return this._getTab(a).disabled?this._getNextTabRef(a):a},o.prototype._getPreviousTabRef=function(){return 0===this._getCurrentTabRef()?this.tabs.length-1:this._getCurrentTabRef()-1},o.prototype._getCurrentTabRef=function(){for(var t=0;t<this.tabs.length;t++)if(this.tabs[t].active)return t;return-1},o.prototype._equaliseHeights=function(){var s=0;t.each(t.map(this.tabs,function(t){return s=Math.max(s,t.panel.css("minHeight","").height()),t.panel}),function(){this.css("minHeight",s)})},o.prototype._isInView=function(a){var e=t(s).scrollTop(),o=e+t(s).height(),i=a.offset().top;return i+a.height()<=o&&i>=e},o.prototype.activate=function(t,s){var a=jQuery.Event("tabs-activate"),e=this._getTab(t);e.disabled||this._openTab(a,e,!0,s||!0)},o.prototype.deactivate=function(t){var s=jQuery.Event("tabs-dectivate"),a=this._getTab(t);a.disabled||this._closeTab(s,a)},o.prototype.enable=function(t){var s=this._getTab(t);s&&(s.disabled=!1,s.tab.addClass(this.options.classes.stateDefault).removeClass(this.options.classes.stateDisabled),s.accordionTab.addClass(this.options.classes.stateDefault).removeClass(this.options.classes.stateDisabled))},o.prototype.disable=function(t){var s=this._getTab(t);s&&(s.disabled=!0,s.tab.removeClass(this.options.classes.stateDefault).addClass(this.options.classes.stateDisabled),s.accordionTab.removeClass(this.options.classes.stateDefault).addClass(this.options.classes.stateDisabled))},o.prototype.getState=function(){return this.state},o.prototype.startRotation=function(s){var a=this;if(!(this.tabs.length>this.options.disabled.length))throw new Error("Rotation is not possible if all tabs are disabled");this.rotateInterval=setInterval(function(){var t=jQuery.Event("rotate");a._openTab(t,a._getTab(a._getNextTabRef()),!0)},s||(t.isNumeric(a.options.rotate)?a.options.rotate:4e3))},o.prototype.stopRotation=function(){s.clearInterval(this.rotateInterval),this.rotateInterval=0},o.prototype.option=function(t,s){return s&&(this.options[t]=s),this.options[t]},t.fn.responsiveTabs=function(s){var a,e=arguments;return void 0===s||"object"==typeof s?this.each(function(){t.data(this,"responsivetabs")||t.data(this,"responsivetabs",new o(this,s))}):"string"==typeof s&&"_"!==s[0]&&"init"!==s?(a=t.data(this[0],"responsivetabs"),"destroy"===s&&t.data(this,"responsivetabs",null),a instanceof o&&"function"==typeof a[s]?a[s].apply(a,Array.prototype.slice.call(e,1)):this):void 0}}(jQuery,window);