X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/30cff3b4aec008ee33ddb413f814d5962a5e3727..f87e22ff51c4626e3fbe446ee13693305901c8d6:/src/editor/modules/rng/rng.js?ds=sidebyside diff --git a/src/editor/modules/rng/rng.js b/src/editor/modules/rng/rng.js index 42ab636..c1382fd 100644 --- a/src/editor/modules/rng/rng.js +++ b/src/editor/modules/rng/rng.js @@ -1,4 +1,5 @@ define([ +'./documentSummary', 'libs/underscore', 'fnpjs/layout', 'fnpjs/vbox', @@ -7,7 +8,7 @@ define([ 'libs/text!./mainLayout.html', 'libs/text!./editingLayout.html', 'libs/text!./diffLayout.html', -], function(_, layout, vbox, logging, tabs, mainLayoutTemplate, visualEditingLayoutTemplate, diffLayoutTemplate) { +], function(documentSummary, _, layout, vbox, logging, tabs, mainLayoutTemplate, visualEditingLayoutTemplate, diffLayoutTemplate) { 'use strict'; @@ -86,9 +87,16 @@ return function(sandbox) { }; eventHandlers.data = { - ready: function() { + ready: function(usingDraft, draftTimestamp) { views.mainLayout.setView('mainView', views.mainTabs.getAsView()); + documentSummary.init(sandbox.getConfig().documentSummaryView); + documentSummary.render(sandbox.getModule('data').getDocumentProperties()); + documentSummary.setDraftField(usingDraft ? (draftTimestamp || '???') : '-'); + views.currentNodePaneLayout.appendView(documentSummary.dom); + + sandbox.getModule('mainBar').setCommandEnabled('drop-draft', usingDraft); + _.each(['sourceEditor', 'documentCanvas', 'documentToolbar', 'nodePane', 'metadataEditor', 'nodeFamilyTree', 'nodeBreadCrumbs', 'mainBar', 'indicator', 'documentHistory', 'diffViewer'], function(moduleName) { sandbox.getModule(moduleName).start(); }); @@ -102,6 +110,10 @@ return function(sandbox) { documentIsDirty = true; }); }, + draftDropped: function() { + documentSummary.setDraftField('-'); + sandbox.getModule('mainBar').setCommandEnabled('drop-draft', false); + }, savingStarted: function(what) { var msg = { remote: gettext('Saving document'), @@ -119,7 +131,16 @@ return function(sandbox) { documentIsDirty = false; sandbox.getModule('mainBar').setCommandEnabled('save', true); sandbox.getModule('indicator').clearMessage({message: msg[what]}); - sandbox.getModule('mainBar').setVersion(data.version); + if(status === 'success' && what === 'remote') { + sandbox.getModule('mainBar').setVersion(data.version); + documentSummary.render(data); + documentSummary.setDraftField('-'); + sandbox.getModule('mainBar').setCommandEnabled('drop-draft', false); + } + if(what === 'local') { + documentSummary.setDraftField(data.timestamp); + sandbox.getModule('mainBar').setCommandEnabled('drop-draft', true); + } }, restoringStarted: function(event) { sandbox.getModule('mainBar').setCommandEnabled('save', false);