history wip: Updating history list after saving document
authorAleksander Łukasz <aleksander.lukasz@nowoczesnapolska.org.pl>
Thu, 13 Jun 2013 12:51:33 +0000 (14:51 +0200)
committerAleksander Łukasz <aleksander.lukasz@nowoczesnapolska.org.pl>
Thu, 13 Jun 2013 12:57:55 +0000 (14:57 +0200)
modules/data.js
modules/documentHistory/documentHistory.js
modules/rng/rng.js

index df40322..33c8df6 100644 (file)
@@ -43,6 +43,17 @@ return function(sandbox) {
         }\r
     });\r
     \r
         }\r
     });\r
     \r
+    var reloadHistory = function() {\r
+        $.ajax({\r
+            method: 'get',\r
+            url: '/' + gettext('editor') + '/' + document_id + '/history',\r
+            success: function(data) {\r
+                history = data; \r
+                sandbox.publish('historyItemAdded', data.slice(-1)[0]);\r
+            },\r
+        });\r
+    }\r
+    \r
     return {\r
         start: function() {\r
             sandbox.publish('ready');\r
     return {\r
         start: function() {\r
             sandbox.publish('ready');\r
@@ -60,7 +71,7 @@ return function(sandbox) {
                 method: 'post',\r
                 url: '/' + gettext('editor') + '/' + document_id,\r
                 data: JSON.stringify({document:doc}),\r
                 method: 'post',\r
                 url: '/' + gettext('editor') + '/' + document_id,\r
                 data: JSON.stringify({document:doc}),\r
-                success: function() {sandbox.publish('savingEnded', 'success');},\r
+                success: function() {sandbox.publish('savingEnded', 'success'); reloadHistory();},\r
                 error: function() {sandbox.publish('savingEnded', 'error');}\r
             });\r
         },\r
                 error: function() {sandbox.publish('savingEnded', 'error');}\r
             });\r
         },\r
index 05cddbc..c90c879 100644 (file)
@@ -19,7 +19,7 @@ return function(sandbox) {
         historyItems.add(item);\r
         var view = new itemView(item);\r
         itemViews.push(view);\r
         historyItems.add(item);\r
         var view = new itemView(item);\r
         itemViews.push(view);\r
-        domNodes.itemList.append(view.dom);\r
+        domNodes.itemList.prepend(view.dom);\r
     }\r
     \r
     var toggleItemViews = function(toggle) {\r
     }\r
     \r
     var toggleItemViews = function(toggle) {\r
@@ -81,7 +81,7 @@ return function(sandbox) {
     \r
     return {\r
         start: function() { sandbox.publish('ready'); },\r
     \r
     return {\r
         start: function() { sandbox.publish('ready'); },\r
-        setHistory: function(history) {\r
+        addHistory: function(history) {\r
             history.forEach(function(historyItem) {\r
                 addHistoryItem(historyItem);\r
             });\r
             history.forEach(function(historyItem) {\r
                 addHistoryItem(historyItem);\r
             });\r
index 3f89cd7..fe666e0 100644 (file)
@@ -130,6 +130,9 @@ return function(sandbox) {
         savingEnded: function(status) {\r
             sandbox.getModule('mainBar').setCommandEnabled('save', true);\r
             sandbox.getModule('indicator').clearMessage();\r
         savingEnded: function(status) {\r
             sandbox.getModule('mainBar').setCommandEnabled('save', true);\r
             sandbox.getModule('indicator').clearMessage();\r
+        },\r
+        historyItemAdded: function(item) {\r
+            sandbox.getModule('documentHistory').addHistory([item]);\r
         }\r
     }\r
     \r
         }\r
     }\r
     \r
@@ -248,7 +251,7 @@ return function(sandbox) {
     \r
     eventHandlers.documentHistory = {\r
         ready: function() {\r
     \r
     eventHandlers.documentHistory = {\r
         ready: function() {\r
-            sandbox.getModule('documentHistory').setHistory(sandbox.getModule('data').getHistory());\r
+            sandbox.getModule('documentHistory').addHistory(sandbox.getModule('data').getHistory());\r
             addMainTab('Historia', 'history', sandbox.getModule('documentHistory').getView());\r
         }\r
     }\r
             addMainTab('Historia', 'history', sandbox.getModule('documentHistory').getView());\r
         }\r
     }\r