{I" class:ETI"BundledAsset;FI"logical_path;TI"libs/ui/gumby.tabs.js;FI" pathname;TI"v/Users/eduardodeoliveirazaghi/Projects/loldesign/loldesign_publisher/app/assets/javascripts/libs/ui/gumby.tabs.js;FI"content_type;TI"application/javascript;TI" mtime;Tl+DZûSI" length;TiyI" digest;TI"%c6ab2a9a3a505687bda9e2344965fdf2;FI" source;TI"y/** * Gumby Tabs */ !function($) { 'use strict'; function Tabs($el) { Gumby.debug('Initializing Tabs', $el); this.$el = $el; this.$nav = this.$el.find('> ul.tab-nav > li'); this.$content = this.$el.children('.tab-content'); var scope = this; // listen for click event on tab nav and custom gumby set event this.$nav.children('a').on(Gumby.click, function(e) { e.preventDefault(); scope.click($(this)); }); // listen for gumby.set value for dynamically set tabs this.$el.on('gumby.set', function(e, index) { Gumby.debug('Set event triggered', scope.$el); scope.set(e, index); }); } // handle tab nav click event Tabs.prototype.click = function($this) { // index of item to activate var index = $this.parent().index(); if(this.$nav.eq(index).add(this.$content.eq(index)).hasClass('active')) { return; } Gumby.debug('Setting active tab to '+index, this.$el); // deactivate other tab navigation and content this.$nav.add(this.$content).removeClass('active'); // activate this tab nav link and content this.$nav.eq(index).add(this.$content.eq(index)).addClass('active'); // trigger gumby.change event and pass current active tab index Gumby.debug('Triggering onChange event', this.$el); this.$el.trigger('gumby.onChange', index); }; // set specific tab Tabs.prototype.set = function(e, index) { this.$nav.eq(index).find('a').trigger(Gumby.click); }; // add initialisation Gumby.addInitalisation('tabs', function() { $('.tabs').each(function() { var $this = $(this); // this element has already been initialized if($this.data('isTabs')) { return true; } // mark element as initialized $this.data('isTabs', true); new Tabs($this); }); }); // register UI module Gumby.UIModule({ module: 'tabs', events: ['onChange', 'set'], init: function() { Gumby.initialize('tabs'); } }); }(jQuery); ;TI"required_assets_digest;TI"%25d13c163688416cfc9137acf1bf6788;FI" _version;TI"%01511319732b44ed6445e68132ed559b;F