Basic communication between source and visual editors; data module
[fnpeditor.git] / modules / visualEditor.js
index 5e503bb..b22aa7d 100644 (file)
@@ -1,15 +1,39 @@
 rng.modules.visualEditor = function(sandbox) {\r
 \r
-    var data = sandbox.getBootstrappedData();\r
-    var view = $(sandbox.getTemplate('main')({title: data.title, content: data.text}));\r
+    var view = $(sandbox.getTemplate('main')());\r
+    var isDirty = false;\r
+    \r
+    var document2html = function(document) {\r
+        return document;\r
+    }\r
+    \r
+    var html2document = function() {\r
+        return $('#rng-visualEditor-content').text();\r
+    }\r
+    \r
+    $('#rng-visualEditor-content', view).on('keyup', function() {\r
+        isDirty = true;\r
+    });\r
     \r
-\r
     return {\r
         start: function() {\r
             sandbox.publish('ready');\r
         },\r
         getView: function() {\r
             return view;\r
+        },\r
+        setDocument: function(document) {\r
+            $('#rng-visualEditor-content', view).html(document2html(document));\r
+            isDirty = false;\r
+        },\r
+        getDocument: function() {\r
+            return html2document();\r
+        },\r
+        isDirty: function() {\r
+            return isDirty;\r
+        },\r
+        setDirty: function(dirty) {\r
+            isDirty = dirty;\r
         }\r
     \r
     }\r