Commit 5d5683b1 authored by Cédric Le Ninivin's avatar Cédric Le Ninivin

erp5_officejs: Add Storage Choice possibility

parent a8c63431
......@@ -170,12 +170,6 @@
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>processing_status_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
......@@ -219,7 +213,7 @@
</tuple>
<state>
<tuple>
<float>1439985572.02</float>
<float>1442854416.99</float>
<string>UTC</string>
</tuple>
</state>
......@@ -264,7 +258,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.34162.16498.45226</string> </value>
<value> <string>945.58613.40423.28074</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -282,66 +276,7 @@
</tuple>
<state>
<tuple>
<float>1441799207.54</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="5" aka="AAAAAAAAAAU=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>external_processing_state</string> </key>
<value> <string>empty</string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>0.0.0.0</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1439984795.03</float>
<float>1442857868.63</float>
<string>UTC</string>
</tuple>
</state>
......
......@@ -285,7 +285,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.34034.51991.273</string> </value>
<value> <string>945.42727.27517.33075</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -303,7 +303,7 @@
</tuple>
<state>
<tuple>
<float>1441379761.67</float>
<float>1441901307.82</float>
<string>UTC</string>
</tuple>
</state>
......
......@@ -128,35 +128,43 @@ jquerymobile.css\n
jquerymobile.js\n
renderjs.js\n
rsvp.js\n
gadget_officejs_page_text_editor_list.js\n
gadget_officejs_page_text_editor_list.html\n
gadget_officejs_header.js\n
gadget_officejs_header.html\n
gadget_officejs_jio_web_page_view.js\n
gadget_officejs_jio.html\n
gadget_officejs_jio_web_page_view.html\n
gadget_officejs_text_editor_application_panel.js\n
gadget_officejs_text_editor_application_panel.html\n
gadget_officejs_page_add_text_document.html\n
gadget_officejs_page_jio_configurator.html\n
gadget_officejs_page_jio_dav_configurator.html\n
gadget_officejs_page_login.html\n
gadget_officejs_page_logout.html\n
gadget_officejs_page_share_webrtc_jio.html\n
gadget_officejs_page_sync.html\n
gadget_officejs_page_text_editor_list.html\n
gadget_officejs_router.html\n
gadget_officejs_router.js\n
gadget_officejs_jio.html\n
gadget_officejs_text_editor_application.html\n
gadget_officejs_text_editor_application_panel.html\n
gadget_officejs_translation.html\n
gadget_officejs_webrtc_jio.html\n
gadget_officejs_widget_listbox.html\n
gadget_officejs_header.js\n
gadget_officejs_jio.js\n
gadget_officejs_jio_web_page_view.js\n
gadget_officejs_page_add_text_document.js\n
gadget_officejs_page_jio_configurator.js\n
gadget_officejs_page_jio_dav_configurator.js\n
gadget_officejs_page_login.js\n
gadget_officejs_page_logout.js\n
gadget_officejs_page_share_webrtc_jio.js\n
gadget_officejs_page_share_webrtc_jio.html\n
gadget_officejs_webrtc_jio.js\n
gadget_officejs_webrtc_jio.html\n
gadget_officejs_page_text_editor_list.html\n
gadget_officejs_page_sync.js\n
gadget_officejs_page_text_editor_list.js\n
gadget_officejs_page_add_text_document.html\n
gadget_officejs_page_add_text_document.js\n
gadget_officejs_router.js\n
gadget_officejs_text_editor_application.js\n
gadget_officejs_text_editor_application_panel.js\n
gadget_officejs_translation.js\n
gadget_officejs_translation.html\n
gadget_officejs_translation_data.js\n
gadget_officejs_webrtc_jio.js\n
gadget_officejs_widget_listbox.js\n
gadget_officejs_widget_listbox.html\n
gadget_officejs_page_sync.js\n
gadget_officejs_page_sync.html\n
officejs_launcher.js\n
officejs_launcher.html\n
erp5_launcher.js\n
erp5_launcher.html\n
rjsunsafe/gadget_ckeditor.js\n
rjsunsafe/gadget_ckeditor.html\n
NETWORK:\n
......@@ -203,12 +211,6 @@ NETWORK:\n
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>processing_status_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
......@@ -252,7 +254,7 @@ NETWORK:\n
</tuple>
<state>
<tuple>
<float>1441731873.74</float>
<float>1442854040.74</float>
<string>UTC</string>
</tuple>
</state>
......@@ -297,7 +299,7 @@ NETWORK:\n
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.43854.16066.11281</string> </value>
<value> <string>945.61166.25675.50432</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -315,64 +317,7 @@ NETWORK:\n
</tuple>
<state>
<tuple>
<float>1441969739.85</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="5" aka="AAAAAAAAAAU=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>0.0.0.0</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1441730475.18</float>
<float>1443009061.03</float>
<string>UTC</string>
</tuple>
</state>
......
......@@ -441,12 +441,6 @@
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>processing_status_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
......@@ -468,7 +462,7 @@
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>romain</string> </value>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
......@@ -490,8 +484,8 @@
</tuple>
<state>
<tuple>
<float>1441100988.32</float>
<string>GMT</string>
<float>1442854033.56</float>
<string>UTC</string>
</tuple>
</state>
</object>
......@@ -535,7 +529,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.39862.6327.58811</string> </value>
<value> <string>945.58607.14824.6775</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -553,7 +547,7 @@
</tuple>
<state>
<tuple>
<float>1441729356.63</float>
<float>1442857960.12</float>
<string>UTC</string>
</tuple>
</state>
......@@ -565,61 +559,4 @@
</tuple>
</pickle>
</record>
<record id="5" aka="AAAAAAAAAAU=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>romain</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>0.0.0.0</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1441100929.74</float>
<string>GMT</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
......@@ -99,7 +99,9 @@
</item>
<item>
<key> <string>text_content</string> </key>
<value> <string>/*global window, rJS, jIO, FormData */\n
<value> <string encoding="cdata"><![CDATA[
/*global window, rJS, jIO, FormData */\n
/*jslint indent: 2, maxerr: 3 */\n
(function (window, rJS, jIO) {\n
"use strict";\n
......@@ -110,43 +112,28 @@
// Initialize the gadget local parameters\n
gadget.state_parameter_dict = {};\n
})\n
\n
.declareAcquiredMethod("redirect", "redirect")\n
.declareAcquiredMethod("getSetting", "getSetting")\n
\n
.declareMethod(\'createJio\', function (jio_options) {\n
this.state_parameter_dict.jio_storage = jIO.createJIO({\n
type: "replicate",\n
// XXX This drop the signature lists...\n
query: {\n
query: \'portal_type:"Web Page" \',\n
// XX Synchonizing the whole module is too much, here is a way to start quietly\n
//+ \'AND local_roles: ("Owner") \'\n
//+ \'AND validation_state: ("draft", "released_alive", "shared_alive", "published_alive") \',\n
limit: [0, 1234567890]\n
},\n
use_remote_post: true,\n
conflict_handling: 2,\n
check_local_modification: true,\n
check_local_creation: true,\n
check_local_deletion: true,\n
check_remote_modification: true,\n
check_remote_creation: true,\n
check_remote_deletion: true,\n
local_sub_storage: {\n
type: "query",\n
var gadget = this;\n
if (jio_options === undefined) {\n
jio_options = {\n
type: "query",\n
sub_storage: {\n
type: "uuid",\n
sub_storage: {\n
type: "uuid",\n
sub_storage: {\n
type: "indexeddb",\n
database: "officejs"\n
}\n
type: "indexeddb",\n
database: "officejs"\n
}\n
},\n
remote_sub_storage: {\n
type: "erp5",\n
url: (new URI("hateoas"))\n
.absoluteTo(location.href)\n
.toString(),\n
default_view_reference: "jio_view"\n
}\n
};\n
}\n
this.state_parameter_dict.jio_storage = jIO.createJIO(jio_options);\n
return this.getSetting("jio_storage_name")\n
.push(function (jio_storage_name) {\n
gadget.state_parameter_dict.jio_storage_name = jio_storage_name;\n
});\n
})\n
.declareMethod(\'allDocs\', function () {\n
......@@ -186,11 +173,26 @@
return storage.removeAttachment.apply(storage, arguments);\n
})\n
.declareMethod(\'repair\', function () {\n
var storage = this.state_parameter_dict.jio_storage;\n
return storage.repair.apply(storage, arguments);\n
var gadget = this,\n
storage = gadget.state_parameter_dict.jio_storage;\n
return storage.repair.apply(storage, arguments)\n
.push(undefined, function (error) {\n
if(error.hasOwnProperty("currentTarget") &&\n
error.currentTarget.status === 401 &&\n
gadget.state_parameter_dict.jio_storage_name === "ERP5") {\n
return {\n
redirect: {\n
page: "login"\n
}\n
};\n
}\n
throw error;\n
});\n
});\n
\n
}(window, rJS, jIO));</string> </value>
}(window, rJS, jIO));
]]></string> </value>
</item>
<item>
<key> <string>title</string> </key>
......@@ -325,7 +327,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.43851.47565.8721</string> </value>
<value> <string>945.58667.36801.48622</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -343,7 +345,7 @@
</tuple>
<state>
<tuple>
<float>1441969006.79</float>
<float>1442858006.69</float>
<string>UTC</string>
</tuple>
</state>
......
......@@ -217,12 +217,6 @@
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>processing_status_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
......@@ -266,7 +260,7 @@
</tuple>
<state>
<tuple>
<float>1440171657.24</float>
<float>1442854134.29</float>
<string>UTC</string>
</tuple>
</state>
......@@ -311,7 +305,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.34162.16498.45226</string> </value>
<value> <string>945.58608.59350.33075</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -329,64 +323,7 @@
</tuple>
<state>
<tuple>
<float>1441723579.7</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="5" aka="AAAAAAAAAAU=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>0.0.0.0</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1440171550.06</float>
<float>1442858061.15</float>
<string>UTC</string>
</tuple>
</state>
......
......@@ -110,9 +110,14 @@
\n
function saveContent(gadget, submit_event) {\n
var i,\n
doc = gadget.options.doc;\n
doc = gadget.options.doc,\n
today = new Date();\n
doc.parent_relative_url = "web_page_module";\n
doc.portal_type = "Web Page";\n
// Supsended until modification_date is handled for synchronization\n
//doc.modification_date = today.getDate()\n
// + \'/\' + (today.getMonth() - 2)\n
// + \'/\' + today.getFullYear();\n
for (i = 0; i < submit_event.target.length; i += 1) {\n
// XXX Should check input type instead\n
if (submit_event.target[i].name) {\n
......@@ -205,7 +210,7 @@
gadget.props.element.innerHTML = html;\n
return gadget.updateHeader({\n
title: options.doc.title + " | Web Page",\n
back_url: "#text_editor_list",\n
back_url: "#page=text_editor_list",\n
panel_action: false,\n
save_action: true\n
});\n
......@@ -320,12 +325,6 @@
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>processing_status_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
......@@ -369,7 +368,7 @@
</tuple>
<state>
<tuple>
<float>1440171628.6</float>
<float>1442854047.94</float>
<string>UTC</string>
</tuple>
</state>
......@@ -414,7 +413,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.42760.43905.59050</string> </value>
<value> <string>945.61376.26272.49152</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -432,64 +431,7 @@
</tuple>
<state>
<tuple>
<float>1441963997.94</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="5" aka="AAAAAAAAAAU=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>0.0.0.0</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1440171548.22</float>
<float>1443020943.97</float>
<string>UTC</string>
</tuple>
</state>
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Web Page" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_Access_contents_information_Permission</string> </key>
<value>
<tuple>
<string>Anonymous</string>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Change_local_roles_Permission</string> </key>
<value>
<tuple>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Modify_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_View_Permission</string> </key>
<value>
<tuple>
<string>Anonymous</string>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>content_md5</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>text/html</string> </value>
</item>
<item>
<key> <string>default_reference</string> </key>
<value> <string>gadget_officejs_page_jio_configurator.html</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>gadget_officejs_page_jio_configurator_html</string> </value>
</item>
<item>
<key> <string>language</string> </key>
<value> <string>en</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Web Page</string> </value>
</item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>text_content</string> </key>
<value> <string encoding="cdata"><![CDATA[
<!DOCTYPE html>\n
<html>\n
<head>\n
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />\n
<meta name="viewport" content="width=device-width, user-scalable=no" />\n
<title>OfficeJS Router Gadget</title>\n
\n
<!-- renderjs -->\n
<script src="rsvp.js" type="text/javascript"></script>\n
<script src="renderjs.js" type="text/javascript"></script>\n
\n
<!-- custom script -->\n
<script src="gadget_officejs_page_jio_configurator.js" type="text/javascript"></script>\n
\n
</head>\n
<body>\n
\n
<article class="ui-content ui-body-c">\n
<section class="ui-content-header-plain">\n
<h3 class="ui-content-title ui-body-c">\n
<span class="ui-icon ui-icon-custom ui-icon-database">&nbsp;</span>\n
Your Storage Choice\n
</h3>\n
</section>\n
<section class="ui-body-c ui-content-section">\n
<p>Select a storage to synchronize your data with</p>\n
<!--div class="select-storage ui-controlgroup ui-controlgroup-horizontal"-->\n
<div class="ui-grid-b ui-responsive">\n
<div class="ui-block-a">\n
<form class="select-dav-form" style="margin-right: .3125em; margin-left: .3125em;">\n
<button class="ui-btn ui-btn-b" type="submit" data-i18n="DAV Storage">DAV Storage</button>\n
</form>\n
</div>\n
<div class="ui-block-b">\n
<form class="select-erp5-form" style="margin-right: .3125em; margin-left: .3125em;">\n
<button class="ui-btn ui-btn-b" type="submit" data-i18n="ERP5">ERP5</button>\n
</form>\n
</div>\n
<div class="ui-block-c">\n
<form class="select-local-form" style="margin-right: .3125em; margin-left: .3125em;">\n
<button class="ui-btn ui-btn-b" type="submit" data-i18n="Local is Enough">Local is Enough</button>\n
</form>\n
</div>\n
</div>\n
<!--/div-->\n
</section>\n
</article>\n
\n
<article class="ui-content ui-body-c">\n
<section class="ui-content-header-plain">\n
<h3 class="ui-content-title ui-body-c">\n
<span class="ui-icon ui-icon-custom ui-icon-file-text-o">&nbsp;</span>\n
Your Text Documents\n
</h3>\n
</section>\n
<section class="ui-body-c ui-content-section">\n
<div class="ui-controlgroup ui-controlgroup-horizontal">\n
<div class="ui-grid-a ui-responsive">\n
<div class="ui-block-a">\n
<a class="ui-btn" href="#page=sync" data-i18n="Synchronize">Synchronize</a>\n
</div>\n
<div class="ui-block-b">\n
<a class="ui-btn" href="#page=document_list" data-i18n="Go to document List">Go to document List</a>\n
</div>\n
</div>\n
</div>\n
</section>\n
</article>\n
</body>\n
</html>
]]></string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>OfficeJS jIO Configurator Gadget</string> </value>
</item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item>
<key> <string>workflow_history</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary>
<item>
<key> <string>document_publication_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>edit_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>processing_status_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>publish_alive</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1442575723.0</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key> <string>validation_state</string> </key>
<value> <string>published_alive</string> </value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>edit</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.61353.27590.61969</string> </value>
</item>
<item>
<key> <string>state</string> </key>
<value> <string>current</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1443018896.6</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="5" aka="AAAAAAAAAAU=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>0.0.0.0</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1442575638.99</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Web Script" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_Access_contents_information_Permission</string> </key>
<value>
<tuple>
<string>Anonymous</string>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Change_local_roles_Permission</string> </key>
<value>
<tuple>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Modify_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_View_Permission</string> </key>
<value>
<tuple>
<string>Anonymous</string>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>content_md5</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>default_reference</string> </key>
<value> <string>gadget_officejs_page_jio_configurator.js</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>gadget_officejs_page_jio_configurator_js</string> </value>
</item>
<item>
<key> <string>language</string> </key>
<value> <string>en</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Web Script</string> </value>
</item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>text_content</string> </key>
<value> <string encoding="cdata"><![CDATA[
/*global window, rJS, RSVP, URI, location,\n
loopEventListener*/\n
/*jslint nomen: true, indent: 2, maxerr: 3*/\n
(function (window, rJS, RSVP) {\n
"use strict";\n
\n
function setERP5Configuration(gadget) {\n
var today = new Date(),\n
configuration = {\n
type: "replicate",\n
// XXX This drop the signature lists...\n
query: {\n
query: \'portal_type:"Web Page" \',\n
// XX Synchonizing the whole module is too much, here is a way to start quietly\n
// Supsended until modification_date is handled for synchronization\n
// + \' AND modification_date:>="\'\n
// + today.getDate() + \'/\' + (today.getMonth() - 2) + \'/\' + today.getFullYear() + \'" \',\n
limit: [0, 1234567890]\n
},\n
use_remote_post: true,\n
conflict_handling: 2,\n
check_local_modification: true,\n
check_local_creation: true,\n
check_local_deletion: true,\n
check_remote_modification: true,\n
check_remote_creation: true,\n
check_remote_deletion: true,\n
local_sub_storage: {\n
type: "query",\n
sub_storage: {\n
type: "uuid",\n
sub_storage: {\n
type: "indexeddb",\n
database: "officejs"\n
}\n
}\n
},\n
remote_sub_storage: {\n
type: "erp5",\n
url: (new URI("hateoas"))\n
.absoluteTo(location.href)\n
.toString(),\n
default_view_reference: "jio_view"\n
}\n
};\n
return gadget.setSetting(\'jio_storage_description\', configuration)\n
.push(function () {\n
return gadget.setSetting(\'jio_storage_name\', "ERP5");\n
})\n
.push(function () {\n
return gadget.reload();\n
});\n
}\n
\n
function setLocalConfiguration(gadget) {\n
var configuration = {\n
type: "query",\n
sub_storage: {\n
type: "uuid",\n
sub_storage: {\n
type: "indexeddb",\n
database: "officejs"\n
}\n
}\n
};\n
return gadget.setSetting(\'jio_storage_description\', configuration)\n
.push(function () {\n
return gadget.reload();\n
});\n
}\n
\n
function setDAVConfiguration(gadget) {\n
return gadget.redirect({page: \'jio_dav_configurator\'});\n
}\n
\n
var gadget_klass = rJS(window);\n
\n
gadget_klass\n
.ready(function (g) {\n
g.props = {};\n
return g.getElement()\n
.push(function (element) {\n
g.props.element = element;\n
g.props.deferred = RSVP.defer();\n
});\n
})\n
.declareAcquiredMethod("updateHeader", "updateHeader")\n
.declareAcquiredMethod("translateHtml", "translateHtml")\n
.declareAcquiredMethod("redirect", "redirect")\n
.declareAcquiredMethod("reload", "reload")\n
.declareAcquiredMethod("setSetting", "setSetting")\n
.declareMethod("render", function () {\n
var gadget = this;\n
return gadget.updateHeader({\n
title: "Storage Configuration"\n
}).push(function () {\n
return gadget.props.deferred.resolve();\n
});\n
})\n
\n
/////////////////////////////////////////\n
// Form submit\n
/////////////////////////////////////////\n
.declareService(function () {\n
var gadget = this;\n
\n
return new RSVP.Queue()\n
.push(function () {\n
return gadget.props.deferred.promise;\n
})\n
.push(function () {\n
return RSVP.all([\n
loopEventListener(\n
gadget.props.element.querySelector(\'form.select-erp5-form\'),\n
\'submit\',\n
true,\n
function () {\n
return setERP5Configuration(gadget);\n
}\n
),\n
loopEventListener(\n
gadget.props.element.querySelector(\'form.select-local-form\'),\n
\'submit\',\n
true,\n
function () {\n
return setLocalConfiguration(gadget);\n
}\n
),\n
loopEventListener(\n
gadget.props.element.querySelector(\'form.select-dav-form\'),\n
\'submit\',\n
true,\n
function () {\n
return setDAVConfiguration(gadget);\n
}\n
)\n
]);\n
});\n
});\n
\n
\n
}(window, rJS, RSVP));
]]></string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>OfficeJS jIO Configurator Gadget JS</string> </value>
</item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item>
<key> <string>workflow_history</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary>
<item>
<key> <string>document_publication_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>edit_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>processing_status_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>publish_alive</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1442575711.45</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key> <string>validation_state</string> </key>
<value> <string>published_alive</string> </value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>edit</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.61375.20078.28842</string> </value>
</item>
<item>
<key> <string>state</string> </key>
<value> <string>current</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1443020972.18</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="5" aka="AAAAAAAAAAU=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>0.0.0.0</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1442575642.12</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Web Page" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_Access_contents_information_Permission</string> </key>
<value>
<tuple>
<string>Anonymous</string>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Change_local_roles_Permission</string> </key>
<value>
<tuple>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Modify_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_View_Permission</string> </key>
<value>
<tuple>
<string>Anonymous</string>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>content_md5</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>text/html</string> </value>
</item>
<item>
<key> <string>default_reference</string> </key>
<value> <string>gadget_officejs_page_jio_dav_configurator.html</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>gadget_officejs_page_jio_dav_configurator_html</string> </value>
</item>
<item>
<key> <string>language</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Web Page</string> </value>
</item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>text_content</string> </key>
<value> <string encoding="cdata"><![CDATA[
<!doctype html>\n
<html>\n
<head>\n
<meta charset="utf-8">\n
<meta name="viewport" content="width=device-width, initial-scale=1">\n
\n
<title>OfficeJS jIO DAV Configurator Page</title>\n
\n
<script src="rsvp.js"></script>\n
<script src="renderjs.js"></script>\n
\n
<script src="gadget_officejs_page_jio_dav_configurator.js"></script>\n
\n
</head>\n
\n
<body>\n
<article class="ui-content ui-body-c">\n
<section class="ui-content-header-plain">\n
<h3 class="ui-content-title ui-body-c">\n
<span class="ui-icon ui-icon-custom ui-icon-database">&nbsp;</span>\n
Your WebDAV Connection parameters\n
</h3>\n
</section>\n
<section class="ui-body-c ui-content-section">\n
<form class="dav-configuration-form">\n
\n
<div class="ui-form">\n
<div class="ui-field-contain">\n
<label data-i18n="Connection URL:">Connection URL:</label>\n
<input type="url" name="dav_url" required value=""/>\n
</div>\n
<div class="ui-field-contain">\n
<label data-i18n="Username:">Username:</label>\n
<input type="text" name="dav_username" value=""/>\n
</div>\n
<div class="ui-field-contain">\n
<label data-i18n="Password:">Password:</label>\n
<input type="password" name="dav_password" value=""/>\n
</div>\n
</div>\n
<div class="select-storage ui-controlgroup ui-controlgroup-horizontal">\n
<div class="ui-grid-b ui-responsive">\n
<div class="ui-block-a"></div>\n
<div class="ui-block-b"></div>\n
<div class="ui-block-c">\n
<button type="submit" data-i18n="Connect" class="ui-btn-btn-right">Connect</button>\n
</div>\n
</div>\n
</div>\n
</form>\n
</section>\n
</article>\n
<article class="ui-content ui-body-c">\n
<section class="ui-content-header-plain">\n
<h3 class="ui-content-title ui-body-c">\n
<span class="ui-icon ui-icon-custom ui-icon-file-text-o">&nbsp;</span>\n
Your Text Documents\n
</h3>\n
</section>\n
<section class="ui-body-c ui-content-section">\n
<div class="ui-controlgroup ui-controlgroup-horizontal">\n
<div class="ui-grid-a ui-responsive">\n
<div class="ui-block-a">\n
<a class="ui-btn" href="#page=sync">Synchronize</a>\n
</div>\n
<div class="ui-block-b">\n
<a class="ui-btn" href="#page=document_list">Go to document List</a>\n
</div>\n
</div>\n
</div>\n
</section>\n
</article>\n
</body>\n
</html>\n
]]></string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>OfficeJS jIO DAV Configurator Page</string> </value>
</item>
<item>
<key> <string>version</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>workflow_history</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary>
<item>
<key> <string>document_publication_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>edit_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>processing_status_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>publish_alive</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1442831613.46</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key> <string>validation_state</string> </key>
<value> <string>published_alive</string> </value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>edit</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.58544.33560.24866</string> </value>
</item>
<item>
<key> <string>state</string> </key>
<value> <string>current</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1443010638.45</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="5" aka="AAAAAAAAAAU=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>0.0.0.0</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1442830550.27</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Web Script" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_Access_contents_information_Permission</string> </key>
<value>
<tuple>
<string>Anonymous</string>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Change_local_roles_Permission</string> </key>
<value>
<tuple>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Modify_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_View_Permission</string> </key>
<value>
<tuple>
<string>Anonymous</string>
<string>Assignee</string>
<string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>content_md5</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>default_reference</string> </key>
<value> <string>gadget_officejs_page_jio_dav_configurator.js</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>gadget_officejs_page_jio_dav_configurator_js</string> </value>
</item>
<item>
<key> <string>language</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Web Script</string> </value>
</item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>text_content</string> </key>
<value> <string>/*global window, rJS, RSVP, URI, location,\n
loopEventListener, btoa */\n
/*jslint nomen: true, indent: 2, maxerr: 3*/\n
(function (window, rJS, RSVP) {\n
"use strict";\n
\n
function setjIODAVConfiguration(gadget) {\n
var configuration = {\n
type: "replicate",\n
// XXX This drop the signature lists...\n
query: {\n
query: \'portal_type:"Web Page" \',\n
// XX Synchonizing the whole module is too much, here is a way to start quietly\n
//+ \'AND local_roles: ("Owner") \'\n
//+ \'AND validation_state: ("draft", "released_alive", "shared_alive", "published_alive") \',\n
limit: [0, 1234567890]\n
},\n
use_remote_post: false,\n
conflict_handling: 2,\n
check_local_modification: true,\n
check_local_creation: true,\n
check_local_deletion: true,\n
check_remote_modification: true,\n
check_remote_creation: true,\n
check_remote_deletion: true,\n
local_sub_storage: {\n
type: "query",\n
sub_storage: {\n
type: "uuid",\n
sub_storage: {\n
type: "indexeddb",\n
database: "officejs"\n
}\n
}\n
},\n
remote_sub_storage: {\n
type: "query",\n
sub_storage: {\n
type: "drivetojiomapping",\n
sub_storage: {\n
type: "dav",\n
url: gadget.props.element.querySelector("input[name=\'dav_url\']").value,\n
basic_login: btoa(gadget.props.element.querySelector("input[name=\'dav_username\']").value\n
+ \':\' + gadget.props.element.querySelector("input[name=\'dav_password\']").value)\n
}\n
}\n
}\n
};\n
return gadget.setSetting(\'jio_storage_description\', configuration)\n
.push(function () {\n
return gadget.setSetting(\'jio_storage_name\', "DAV");\n
})\n
.push(function () {\n
return gadget.reload();\n
});\n
}\n
\n
var gadget_klass = rJS(window);\n
\n
gadget_klass\n
.ready(function (g) {\n
g.props = {};\n
return g.getElement()\n
.push(function (element) {\n
g.props.element = element;\n
g.props.deferred = RSVP.defer();\n
return g.getSetting(\'jio_storage_name\');\n
})\n
.push(function (jio_storage_name) {\n
if (jio_storage_name === "DAV") {\n
return g.getSetting(\'jio_storage_description\')\n
.push(function (jio_storage_description) {\n
g.props.element.querySelector("input[name=\'dav_url\']").value =\n
jio_storage_description.remote_sub_storage.sub_storage.sub_storage.url;\n
});\n
}\n
});\n
})\n
.declareAcquiredMethod("updateHeader", "updateHeader")\n
.declareAcquiredMethod("redirect", "redirect")\n
.declareAcquiredMethod("reload", "reload")\n
.declareAcquiredMethod("getSetting", "getSetting")\n
.declareAcquiredMethod("setSetting", "setSetting")\n
.declareMethod("render", function () {\n
var gadget = this;\n
return gadget.updateHeader({\n
title: "Connect To DAV Storage",\n
back_url: "#page=jio_configurator",\n
panel_action: false\n
}).push(function () {\n
return gadget.props.deferred.resolve();\n
});\n
})\n
\n
/////////////////////////////////////////\n
// Form submit\n
/////////////////////////////////////////\n
.declareService(function () {\n
var gadget = this;\n
\n
return new RSVP.Queue()\n
.push(function () {\n
return gadget.props.deferred.promise;\n
})\n
.push(function () {\n
return loopEventListener(\n
gadget.props.element.querySelector(\'form\'),\n
\'submit\',\n
true,\n
function () {\n
return setjIODAVConfiguration(gadget);\n
}\n
);\n
});\n
});\n
\n
\n
}(window, rJS, RSVP));</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>OfficeJS jIO DAV Configurator Page JS</string> </value>
</item>
<item>
<key> <string>version</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>workflow_history</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary>
<item>
<key> <string>document_publication_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>edit_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>processing_status_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>publish_alive</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1442831622.16</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key> <string>validation_state</string> </key>
<value> <string>published_alive</string> </value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>edit</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.61335.62217.48981</string> </value>
</item>
<item>
<key> <string>state</string> </key>
<value> <string>current</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1443017802.67</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="5" aka="AAAAAAAAAAU=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>0.0.0.0</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1442830548.22</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
......@@ -121,15 +121,27 @@
<script src="gadget_global.js" ></script>\n
\n
<script id="page-template" type="text/x-handlebars-template">\n
<div class="ui-grid-b ui-responsive">\n
<div class="ui-block-a"></div>\n
<div class="ui-block-b">\n
<form class="synchro-form view-web-page-form">\n
<button type="submit" data-i18n="Launch Synchronization" data-theme="b">Launch Synchronization</button>\n
</form>\n
</div>\n
<div class="ui-block-c"></div>\n
</div>\n
<article class="ui-content ui-body-c">\n
<section class="ui-content-header-plain">\n
<h3 class="ui-content-title ui-body-c">\n
<span class="ui-icon ui-icon-custom ui-icon-refresh">&nbsp;</span>\n
Synchronize your data\n
</h3>\n
</section>\n
<section class="ui-body-c ui-content-section">\n
<div class="ui-controlgroup ui-controlgroup-horizontal">\n
<div class="ui-grid-b ui-responsive">\n
<div class="ui-block-a"></div>\n
<div class="ui-block-b">\n
<form class="synchro-form view-web-page-form">\n
<button type="submit" data-i18n="Launch Synchronization" data-theme="b">Launch Synchronization</button>\n
</form>\n
</div>\n
<div class="ui-block-c"></div>\n
</div>\n
</div>\n
</section>\n
</article>\n
</script>\n
\n
<script src="gadget_officejs_page_sync.js"></script>\n
......@@ -184,12 +196,6 @@
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>processing_status_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
......@@ -233,7 +239,7 @@
</tuple>
<state>
<tuple>
<float>1438011705.1</float>
<float>1442854019.1</float>
<string>UTC</string>
</tuple>
</state>
......@@ -278,7 +284,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.41276.23899.60552</string> </value>
<value> <string>945.58606.64610.54852</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -296,64 +302,7 @@
</tuple>
<state>
<tuple>
<float>1441814187.24</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="5" aka="AAAAAAAAAAU=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>0.0.0.0</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1438011607.44</float>
<float>1443012064.85</float>
<string>UTC</string>
</tuple>
</state>
......
......@@ -101,7 +101,9 @@
</item>
<item>
<key> <string>text_content</string> </key>
<value> <string>/*globals window, RSVP, rJS, promiseEventListener, Handlebars*/\n
<value> <string encoding="cdata"><![CDATA[
/*globals window, RSVP, rJS, promiseEventListener, Handlebars*/\n
/*jslint indent: 2, maxlen: 80, nomen: true*/\n
(function (window, RSVP, rJS, promiseEventListener, Handlebars) {\n
"use strict";\n
......@@ -156,12 +158,17 @@
\n
return gadget.repair();\n
})\n
.push(function () {\n
.push(function (result) {\n
if (result !== undefined && result.hasOwnProperty(\'redirect\')){\n
return gadget.redirect(result.redirect);\n
}\n
return gadget.redirect({});\n
});\n
});\n
\n
}(window, RSVP, rJS, promiseEventListener, Handlebars));</string> </value>
}(window, RSVP, rJS, promiseEventListener, Handlebars));
]]></string> </value>
</item>
<item>
<key> <string>title</string> </key>
......@@ -204,12 +211,6 @@
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>processing_status_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
......@@ -253,7 +254,7 @@
</tuple>
<state>
<tuple>
<float>1438011698.37</float>
<float>1442854079.85</float>
<string>UTC</string>
</tuple>
</state>
......@@ -298,7 +299,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.34038.48545.63795</string> </value>
<value> <string>945.58607.65382.65228</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -316,64 +317,7 @@
</tuple>
<state>
<tuple>
<float>1441813353.14</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="5" aka="AAAAAAAAAAU=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>0.0.0.0</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1438011605.22</float>
<float>1442858160.45</float>
<string>UTC</string>
</tuple>
</state>
......
......@@ -255,12 +255,6 @@
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>processing_status_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
......@@ -304,7 +298,7 @@
</tuple>
<state>
<tuple>
<float>1440093307.38</float>
<float>1442854112.82</float>
<string>UTC</string>
</tuple>
</state>
......@@ -349,7 +343,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.39477.48217.31795</string> </value>
<value> <string>945.58608.35906.7321</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -367,64 +361,7 @@
</tuple>
<state>
<tuple>
<float>1441729437.19</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="5" aka="AAAAAAAAAAU=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>0.0.0.0</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1440093229.84</float>
<float>1442858189.31</float>
<string>UTC</string>
</tuple>
</state>
......
......@@ -121,7 +121,7 @@
var gadget = this;\n
gadget.options = options;\n
if (options.jio_key === undefined || options.jio_key === \'\') {\n
if (options.page === undefined || options.page === \'\') {\n
if (options.page === undefined || options.page === \'\' || options.page === "document_list") {\n
options.page = DEFAULT_PAGE;\n
}\n
return {\n
......@@ -291,7 +291,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.38531.43749.63146</string> </value>
<value> <string>945.54379.5447.43417</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -309,7 +309,7 @@
</tuple>
<state>
<tuple>
<float>1441649525.84</float>
<float>1442858756.66</float>
<string>UTC</string>
</tuple>
</state>
......
......@@ -141,7 +141,7 @@
<div class="ui-content">\n
<ul data-role="listview" class="ui-listview">\n
<li><a href="#page=text_editor_list" data-i18n="Text Documents">Text Documents</a></li>\n
<li><a href="#page=login" data-i18n="Connect to ERP5">Connect to ERP5</a></li>\n
<li><a href="#page=jio_configurator" data-i18n="Storage Configuration">Storage Configuration</a></li>\n
<li><a href="#page=sync" data-i18n="Sync">Sync</a></li>\n
<li class="ui-last-child"><a href="#page=logout" data-i18n="Logout">Logout</a></li>\n
</ul>\n
......@@ -292,7 +292,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.41275.34997.17220</string> </value>
<value> <string>945.58601.10119.52531</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -310,7 +310,7 @@
</tuple>
<state>
<tuple>
<float>1441814393.93</float>
<float>1443018532.17</float>
<string>UTC</string>
</tuple>
</state>
......
......@@ -341,6 +341,16 @@
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_header_gadget_url</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
</tuple>
</value>
</item>
......@@ -374,7 +384,7 @@
<key> <string>categories</string> </key>
<value>
<tuple>
<string>aggregate/web_page_module/officejs_launcher_html</string>
<string>aggregate/web_page_module/rjs_gadget_erp5_html</string>
</tuple>
</value>
</item>
......@@ -398,6 +408,10 @@
<key> <string>configuration_hateoas_url</string> </key>
<value> <string>hateoas/</string> </value>
</item>
<item>
<key> <string>configuration_header_gadget_url</string> </key>
<value> <string>gadget_officejs_header.html</string> </value>
</item>
<item>
<key> <string>configuration_jio_gadget_url</string> </key>
<value> <string>gadget_officejs_jio.html</string> </value>
......@@ -707,7 +721,7 @@
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>945.41250.8324.32955</string> </value>
<value> <string>945.58604.38981.59955</string> </value>
</item>
<item>
<key> <string>state</string> </key>
......@@ -725,7 +739,7 @@
</tuple>
<state>
<tuple>
<float>1441966702.43</float>
<float>1442858486.32</float>
<string>UTC</string>
</tuple>
</state>
......
web_page_module/gadget_officejs_**
web_page_module/gadget_ckeditor_**
web_page_module/gadget_ckeditor_*
web_page_module/gadget_officejs_*
web_page_module/officejs_launcher_*
web_site_module/officejs_text_editor
web_site_module/officejs_text_editor/**
web_page_module/officejs_launcher_**
\ No newline at end of file
web_site_module/officejs_text_editor/**
\ No newline at end of file
web_page_module/gadget_officejs_**
web_page_module/gadget_ckeditor_**
web_page_module/gadget_ckeditor_*
web_page_module/gadget_officejs_*
web_page_module/officejs_launcher_*
web_site_module/officejs_text_editor
web_site_module/officejs_text_editor/**
web_page_module/officejs_launcher_**
\ No newline at end of file
web_site_module/officejs_text_editor/**
\ No newline at end of file
web_page_module/gadget_ckeditor_**
web_page_module/gadget_officejs_**
web_page_module/officejs_launcher_**
web_page_module/gadget_ckeditor_*
web_page_module/gadget_officejs_*
web_page_module/officejs_launcher_*
web_site_module/officejs_text_editor
web_site_module/officejs_text_editor/**
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment