Barco.WidgetDashboardTabs=function(){this._jComponent=$(".WidgetDashboardTabsComponent");this.initialize()};Barco.WidgetDashboardTabs.prototype={initialize:function(){this._currentTabGroup=0;this._widgetTabs=this._jComponent.find("[data-selector='widget-tabs']");this._numberOfTabGroups=parseInt(this._jComponent.find("[data-selector='number-of-tab-groups']").val());this._currentTabId=this._jComponent.find("[data-selector='current-tab-id']").val();var n=this._widgetTabs.find("[data-id='"+this._currentTabId+"']");this._currentTabGroup=n.data("group-number");this._previousTab=this._jComponent.find("[data-selector='previous-tab']");this._previousCount=this._previousTab.find("[data-selector='previous-count']");this._moreTab=this._jComponent.find("[data-selector='more-tab']");this._moreTab.length>0&&(this._moreCount=this._moreTab.find("[data-selector='more-count']"));this._previousTab.off("click");this._previousTab.on("click",$.proxy(this._previousTabClicked,this));if(this._moreTab.length>0){this._moreTab.off("click");this._moreTab.on("click",$.proxy(this._moreTabClicked,this))}this._updateTabNavigation(this._currentTabGroup)},_previousTabClicked:function(n){n.preventDefault();this._currentTabGroup=this._currentTabGroup-1;this._updateTabNavigation(this._currentTabGroup)},_moreTabClicked:function(n){n.preventDefault();this._currentTabGroup=this._currentTabGroup+1;this._updateTabNavigation(this._currentTabGroup)},_updateTabNavigation:function(n){var t=this._jComponent.find("[data-selector='widget-tab']").hide();t.closest("[data-group-number='"+n+"']").show();this._previousTab.closest("li").hide();this._moreTab.length>0&&this._moreTab.hide();n>0&&this._previousTab.closest("li").show();n+1<this._numberOfTabGroups&&this._moreTab.show();this._refreshTabCount()},_refreshTabCount:function(){var r=this._jComponent.find("[data-selector='widget-tab']"),i=this,n=0,t=0;r.each(function(){var u=$(this),r=parseInt(u.data("group-number"));r>i._currentTabGroup&&(n=n+1);r<i._currentTabGroup&&(t=t+1)});this._moreCount!=undefined&&this._moreCount.length>0&&this._moreCount.html(n);this._previousCount!=undefined&&this._previousCount.length>0&&this._previousCount.html(t)}}