-rng.modules.tabsManager = function(sandbox) {\r
+define(['views/tabs/tabs'], function(tabsView) {\r
\r
- var $ = sandbox.$;\r
+return function(sandbox) {\r
\r
- var view = $(sandbox.getTemplate('main')());\r
- \r
- var tabContent = {};\r
- \r
- function selectTab(tabCode) {\r
- var tabBar = $(view, '#rng-main-tabs');\r
- var prevTabCode = tabBar.find('li.active a').attr('href').substr(1);\r
- tabBar.find('li').removeClass('active');\r
- tabBar.find('a[href=#' + tabCode + ']').parent().addClass('active');\r
- $(view, '.rng-tab-content').hide();\r
- $(view, '#rng-tab-content-' + tabCode).show();\r
- }\r
- \r
- $('#rng-main-tabs li a').click(function(e) {\r
- selectTab($(e.target).attr('href').substr(1));\r
+ var view = new tabsView.View();\r
+ view.on('leaving', function(slug) {\r
+ sandbox.publish('leaving', slug);\r
+ });\r
+ view.on('tabSelected', function(slug) {\r
+ sandbox.publish('showed', slug);\r
});\r
\r
return {\r
start: function() {\r
+ view.render();\r
sandbox.publish('ready');\r
},\r
\r
getView: function() {\r
- return view;\r
+ return view.$el;\r
},\r
\r
- addTab: function(title, view) {\r
- tabContent[title] = view;\r
+ addTab: function(title, slug, contentView) {\r
+ view.addTab(title, slug, contentView);\r
+ \r
+ },\r
+ getCurrentSlug: function() {\r
+ return view.selectedTab;\r
}\r
}\r
+};\r
\r
-};
\ No newline at end of file
+});
\ No newline at end of file