X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/efe36f4f1b5df351eeb4d40a54c3900cf9a7079b..29a9bfd9b61771b41ca18de2a53b672cb3c07cf1:/src/editor/modules/mainBar/mainBar.js diff --git a/src/editor/modules/mainBar/mainBar.js b/src/editor/modules/mainBar/mainBar.js index ecf6812..256111f 100644 --- a/src/editor/modules/mainBar/mainBar.js +++ b/src/editor/modules/mainBar/mainBar.js @@ -7,9 +7,20 @@ 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') + })); + + 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,10 +28,18 @@ return function(sandbox) { start: function() { sandbox.publish('ready'); }, getView: function() {return view;}, setCommandEnabled: function(cmd, enabled) { - view.find('[data-cmd='+cmd+']').toggleClass('disabled', !enabled); - }, - setVersion: function(version) { - view.find('.version').text(version); + 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); + } } };