even more tutorial in editor (status bar)
[fnpeditor.git] / src / editor / modules / mainBar / mainBar.js
index ecf6812..93bb8e0 100644 (file)
@@ -7,9 +7,30 @@ define([
 
 return function(sandbox) {
 
-    var view = $(_.template(template)());
-    view.find('button').click(function(e) {
+    /* globals gettext*/
+
+    var config = sandbox.getConfig(),
+        userName = config.user && config.user.name,
+        view = $(_.template(template)({
+            userName: userName || gettext('anonymous'),
+            documentScheduleUrl: config.documentScheduleUrl,
+            documentForkUrl: config.documentForkUrl,
+            documentPreviewUrl: config.documentPreviewMainUrl(data.revision),
+            documentGalleryUrl: config.documentGalleryUrl,
+            previewTutorial: sandbox.getTutorialItem('preview'),
+            attachmentsTutorial: sandbox.getTutorialItem('attachments'),
+            draftTutorial: sandbox.getTutorialItem('draft'),
+            saveTutorial: sandbox.getTutorialItem('save'),
+            mainPageTutorial: sandbox.getTutorialItem('mainpage'),
+            exitTutorial: sandbox.getTutorialItem('exit')
+        }));
+
+    view.find('[data-cmd]').click(function(e) {
         e.preventDefault();
+        var target = $(e.target);
+        if(target.hasClass('disabled')) {
+            return;
+        }
         sandbox.publish('cmd.' + $(e.target).attr('data-cmd'));
     });
 
@@ -17,13 +38,24 @@ return function(sandbox) {
         start: function() { sandbox.publish('ready'); },
         getView: function() {return view;},
         setCommandEnabled: function(cmd, enabled) {
-            view.find('[data-cmd='+cmd+']').toggleClass('disabled', !enabled);
+            var trigger = view.find('[data-cmd='+cmd+']'),
+                disabledText = trigger.attr('data-disabled-text'),
+                originalContent = trigger.data('originalContent');
+            trigger.toggleClass('disabled', !enabled);
+            if(enabled && originalContent) {
+                trigger.html(originalContent);
+                trigger.removeData('originalContent');
+            }
+            if(!enabled && disabledText) {
+                trigger.data('originalContent', trigger.html());
+                trigger.text(disabledText);
+            }
         },
-        setVersion: function(version) {
-            view.find('.version').text(version);
+        setSummaryView: function(summaryView) {
+            view.find('.bottom').prepend(summaryView);
         }
     };
 
 };
 
-});
\ No newline at end of file
+});