Commit 057e6666 authored by Vincent Bechu's avatar Vincent Bechu

erp5_officejs: get last version of bookmark manager from officejs production

parent 18449e47
...@@ -437,6 +437,12 @@ NETWORK:\n ...@@ -437,6 +437,12 @@ NETWORK:\n
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>CKEDITOR Gadget AppCache</string> </value> <value> <string>CKEDITOR Gadget AppCache</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -107,6 +107,12 @@ ...@@ -107,6 +107,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>CKEditor Gadget</string> </value> <value> <string>CKEditor Gadget</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -101,6 +101,12 @@ ...@@ -101,6 +101,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>CKEditor Gadget JS</string> </value> <value> <string>CKEditor Gadget JS</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -186,6 +186,12 @@ NETWORK:\n ...@@ -186,6 +186,12 @@ NETWORK:\n
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>RenderJS Gadget OfficeJS AppCache</string> </value> <value> <string>RenderJS Gadget OfficeJS AppCache</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -140,6 +140,12 @@ ...@@ -140,6 +140,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Application Panel Gadget</string> </value> <value> <string>OfficeJS Application Panel Gadget</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -66,7 +66,7 @@ ...@@ -66,7 +66,7 @@
key, key,
value, value,
i, i,
queue = gadget.translateHtml(panel_template_header() + panel_template_body()); queue = gadget.translateHtml(panel_template_header() + panel_template_body({"location": window.location.origin + window.location.pathname}));
queue queue
.push(function (my_translated_or_plain_html) { .push(function (my_translated_or_plain_html) {
......
...@@ -252,7 +252,7 @@ ...@@ -252,7 +252,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>supercedriclen</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -266,7 +266,7 @@ ...@@ -266,7 +266,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>956.47493.18553.34594</string> </value> <value> <string>957.598.45791.65518</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -284,7 +284,7 @@ ...@@ -284,7 +284,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1484749934.29</float> <float>1485868259.98</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -107,14 +107,22 @@ ...@@ -107,14 +107,22 @@
</item> </item>
<item> <item>
<key> <string>text_content</string> </key> <key> <string>text_content</string> </key>
<value> <string>CACHE MANIFEST\n <value> <string encoding="cdata"><![CDATA[
CACHE MANIFEST\n
# generated on Fri, 09 Dec 2016 11:45:33 +0000\n # generated on Fri, 09 Dec 2016 11:45:33 +0000\n
# XXX + fonts\n # XXX + fonts\n
# images/ajax-loader.gif\n # images/ajax-loader.gif\n
CACHE:\n CACHE:\n
https://netdna.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css\n https://netdna.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css\n
https://netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.eot?v=4.2.0\n
https://netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.eot?#iefix&v=4.2.0\n
https://netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.woff?v=4.2.0\n https://netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.woff?v=4.2.0\n
https://netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.ttf?v=4.2.0\n
https://netdna.bootstrapcdn.com/font-awesome/4.2.0/fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular\n
jio_mappingstorage.js\n
erp5_launcher.js\n erp5_launcher.js\n
bookmark_manager_landing_page.html\n
gadget_erp5.css\n gadget_erp5.css\n
gadget_erp5_editor_panel.html\n gadget_erp5_editor_panel.html\n
gadget_erp5_editor_panel.js\n gadget_erp5_editor_panel.js\n
...@@ -126,10 +134,14 @@ gadget_officejs_bookmark_manager_panel.html\n ...@@ -126,10 +134,14 @@ gadget_officejs_bookmark_manager_panel.html\n
gadget_officejs_bookmark_manager_router.html\n gadget_officejs_bookmark_manager_router.html\n
gadget_officejs_header.html\n gadget_officejs_header.html\n
gadget_officejs_header.js\n gadget_officejs_header.js\n
gadget_officejs_page_document_list.html\n
gadget_officejs_page_document_list.js\n
gadget_officejs_jio.html\n gadget_officejs_jio.html\n
gadget_officejs_jio.js\n gadget_officejs_jio.js\n
gadget_officejs_jio_url_view.html\n gadget_officejs_jio_url_view.html\n
gadget_officejs_jio_url_view.js\n gadget_officejs_jio_url_view.js\n
gadget_officejs_page_add_document.html\n
gadget_officejs_page_add_document.js\n
gadget_officejs_page_add_bookmark.html\n gadget_officejs_page_add_bookmark.html\n
gadget_officejs_page_add_bookmark.js\n gadget_officejs_page_add_bookmark.js\n
gadget_officejs_page_bookmark_dispatcher.html\n gadget_officejs_page_bookmark_dispatcher.html\n
...@@ -142,6 +154,10 @@ gadget_officejs_page_jio_configurator.html\n ...@@ -142,6 +154,10 @@ gadget_officejs_page_jio_configurator.html\n
gadget_officejs_page_jio_configurator.js\n gadget_officejs_page_jio_configurator.js\n
gadget_officejs_page_jio_dav_configurator.html\n gadget_officejs_page_jio_dav_configurator.html\n
gadget_officejs_page_jio_dav_configurator.js\n gadget_officejs_page_jio_dav_configurator.js\n
gadget_officejs_page_jio_erp5_configurator.js\n
gadget_officejs_page_jio_erp5_configurator.html\n
gadget_officejs_page_jio_dropbox_configurator.html\n
gadget_officejs_page_jio_dropbox_configurator.js\n
gadget_officejs_page_sync.html\n gadget_officejs_page_sync.html\n
gadget_officejs_page_sync.js\n gadget_officejs_page_sync.js\n
gadget_officejs_router.js\n gadget_officejs_router.js\n
...@@ -150,6 +166,8 @@ gadget_officejs_widget_listbox.js\n ...@@ -150,6 +166,8 @@ gadget_officejs_widget_listbox.js\n
gadget_translation_data.js\n gadget_translation_data.js\n
gadget_translation.html\n gadget_translation.html\n
gadget_translation.js\n gadget_translation.js\n
gadget_officejs_liberator.html\n
gadget_officejs_liberator.js\n
handlebars.js\n handlebars.js\n
jiodev.js\n jiodev.js\n
jquery.js\n jquery.js\n
...@@ -158,12 +176,20 @@ jquerymobile.js\n ...@@ -158,12 +176,20 @@ jquerymobile.js\n
renderjs.js\n renderjs.js\n
rsvp.js\n rsvp.js\n
NETWORK:\n NETWORK:\n
*</string> </value> *
]]></string> </value>
</item> </item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>RenderJS Gadget OfficeJS Bookmark Manager AppCache</string> </value> <value> <string>RenderJS Gadget OfficeJS Bookmark Manager AppCache</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
...@@ -293,7 +319,7 @@ NETWORK:\n ...@@ -293,7 +319,7 @@ NETWORK:\n
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>955.55156.38503.48725</string> </value> <value> <string>957.11988.60494.51524</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -311,7 +337,7 @@ NETWORK:\n ...@@ -311,7 +337,7 @@ NETWORK:\n
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1481277406.23</float> <float>1486551690.48</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="shortcut icon" href="favicon.ico">
<title>Bookmark Manager</title>
<link href="//netdna.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" href="jquerymobile.css">
<link rel="stylesheet" href="gadget_erp5.css">
<script data-renderjs-configuration="application_title" type="text/x-renderjs-configuration">Bookmark Manager</script>
<script data-renderjs-configuration="panel_gadget" type="text/x-renderjs-configuration">gadget_officejs_bookmark_manager_panel.html</script>
<script data-renderjs-configuration="action_view" type="text/x-renderjs-configuration">object_view</script>
<script data-renderjs-configuration="default_view_reference" type="text/x-renderjs-configuration">view</script>
<script data-renderjs-configuration="hateoas_url" type="text/x-renderjs-configuration">hateoas/</script>
<script src="jquery.js"></script>
<script src="jquerymobile.js"></script>
<script src="rsvp.js"></script>
<script src="renderjs.js"></script>
<script src="gadget_global.js" ></script>
<script src="erp5_launcher.js"></script>
</head>
<body>
<div data-role="page">
<div data-gadget-url="gadget_jio.html"
data-gadget-scope="setting_gadget"
data-gadget-sandbox="public"></div>
<div data-gadget-url="gadget_officejs_bookmark_manager_router.html"
data-gadget-scope="router"
data-gadget-sandbox="public"></div>
<div data-gadget-url="gadget_translation.html"
data-gadget-scope="translation_gadget"
data-gadget-sandbox="public"></div>
<div data-gadget-url="gadget_officejs_header.html"
data-gadget-scope="header"
data-gadget-sandbox="public"></div>
<div data-gadget-url="gadget_officejs_jio.html"
data-gadget-scope="jio_gadget"
data-gadget-sandbox="public"></div>
<div data-gadget-url="gadget_erp5_editor_panel.html"
data-gadget-scope="editor_panel"
data-gadget-sandbox="public"></div>
<div data-gadget-url="gadget_officejs_bookmark_manager_panel.html"
data-gadget-scope="panel"
data-gadget-sandbox="public"></div>
<div role="main" class="ui-content gadget-content"></div>
</div>
</body>
</html>
\ No newline at end of file
<?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>bookmark_manager_landing_page.html</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>gadget_officejs_bookmark_manager_gadget_landing_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>title</string> </key>
<value> <string>Bookmark Manager Landing Page</string> </value>
</item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</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>zope</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>1485781950.11</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>zope</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>956.64904.8681.12748</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>1485955236.21</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>zope</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>1485770925.12</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
...@@ -39,8 +39,8 @@ ...@@ -39,8 +39,8 @@
<li><a href="#page=bookmark_dispatcher" data-i18n="Search">Search</a></li> <li><a href="#page=bookmark_dispatcher" data-i18n="Search">Search</a></li>
<li><a href="#page=bookmark_preference" data-i18n="Preferences">Preferences</a></li> <li><a href="#page=bookmark_preference" data-i18n="Preferences">Preferences</a></li>
<li><a href="#page=jio_configurator" data-i18n="Storage Configuration">Storage Configuration</a></li> <li><a href="#page=jio_configurator" data-i18n="Storage Configuration">Storage Configuration</a></li>
<li><a href="#page=sync" data-i18n="Synchronization">Synchronization</a></li> <li><a href="#page=sync&auto_repair=true" data-i18n="Synchronize">Synchronize</a></li>
<li class="ui-last-child"><a href="#page=logout" data-i18n="Logout">Logout</a></li> <li><a href="https://www.cribjs.com/#page=jio_crib_configurator&application_name=Bookmark Manager&communication_gadget={{location}}gadget_officejs_liberator.html" data-i18n="Edit Me">Edit Me</a></li>
</ul> </ul>
</div> </div>
</script> </script>
......
...@@ -140,6 +140,12 @@ ...@@ -140,6 +140,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Application Panel Gadget</string> </value> <value> <string>OfficeJS Application Panel Gadget</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
...@@ -269,7 +275,7 @@ ...@@ -269,7 +275,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>955.26769.37270.921</string> </value> <value> <string>956.64903.6566.48281</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -287,7 +293,7 @@ ...@@ -287,7 +293,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1483018311.81</float> <float>1485866827.11</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -14,9 +14,10 @@ ...@@ -14,9 +14,10 @@
</head> </head>
<body> <body>
<script data-renderjs-configuration="portal_type" type="text/x-renderjs-configuration">Url</script> <script data-renderjs-configuration="portal_type" type="text/x-renderjs-configuration">Bookmark</script>
<script data-renderjs-configuration="parent_relative_url" type="text/x-renderjs-configuration">url_module</script> <script data-renderjs-configuration="parent_relative_url" type="text/x-renderjs-configuration">bookmark_module</script>
<script data-renderjs-configuration="document_title" type="text/x-renderjs-configuration">Bookmark</script> <script data-renderjs-configuration="document_title" type="text/x-renderjs-configuration">Bookmark</script>
<script data-renderjs-configuration="document_title_plural" type="text/x-renderjs-configuration">Bookmarks</script> <script data-renderjs-configuration="document_title_plural" type="text/x-renderjs-configuration">Bookmarks</script>
<script data-renderjs-configuration="global_setting_gadget_url" type="text/x-renderjs-configuration">../officejs_setting_gadget/</script>
</body> </body>
</html> </html>
\ No newline at end of file
...@@ -140,6 +140,12 @@ ...@@ -140,6 +140,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Bookmark Manager router Gadget</string> </value> <value> <string>OfficeJS Bookmark Manager router Gadget</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
...@@ -269,7 +275,10 @@ ...@@ -269,7 +275,10 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>953.62288.29074.44236</string> </value> <value> <string>957.377.3106.25634</string> </value>
</item>
<item>
<key> <string>state</string> </key>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -287,7 +296,9 @@ ...@@ -287,7 +296,9 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1479657727.07</float> <float>1486569400.95</float>
<string>UTC</string>
</tuple>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
/*global window, rJS, RSVP, URI, location,
loopEventListener, btoa */
/*jslint nomen: true, indent: 2, maxerr: 3*/
(function (window, rJS, RSVP) {
"use strict";
function setjIODAVConfiguration(gadget) {
return gadget.getSetting("portal_type")
.push(function (portal_type) {
var old_date = new Date(),
configuration = {};
// We are looking for documents modified in the past 3 month
old_date = new Date(old_date.getFullYear(), old_date.getMonth() - 3);
configuration = {
type: "replicate",
// XXX This drop the signature lists...
query: {
query: 'portal_type:"' + portal_type + '" ',
// XX Synchonizing the whole module is too much, here is a way to start quietly
//+ 'AND local_roles: ("Owner") '
//+ 'AND validation_state: ("draft", "released_alive", "shared_alive", "published_alive") ',
limit: [0, 1234567890]
},
use_remote_post: false,
conflict_handling: 2,
check_local_modification: true,
check_local_creation: true,
check_local_deletion: true,
check_remote_modification: true,
check_remote_creation: true,
check_remote_deletion: true,
local_sub_storage: {
type: "mapping",
attachment_mapping_dict: {
'data': {
get: {uri_template: 'enclosure'},
put: {uri_template: 'enclosure'}
}
},
sub_storage: {
type: "query",
sub_storage: {
type: "uuid",
sub_storage: {
type: "indexeddb",
database: "officejs-dav"
}
}
}
},
remote_sub_storage: {
type: "mapping",
attachment_mapping_dict: {
'data': {
get: {uri_template: 'enclosure'},
put: {uri_template: 'enclosure'}
}
},
sub_storage: {
type: "query",
sub_storage: {
type: "drivetojiomapping",
sub_storage: {
type: "mapping",
mapping_dict: {
"portal_type": {
"equal": "type",
"value": {
"switch": {
"PDF": {
"equal": "pdf"
},
"Web Text": {
"equal": "txt"
}
}
}
}
},
sub_storage: {
type: "dav",
url: gadget.props.element.querySelector("input[name='dav_url']").value,
basic_login: btoa(gadget.props.element.querySelector("input[name='dav_username']").value
+ ':' + gadget.props.element.querySelector("input[name='dav_password']").value),
with_credentials: true
}
}
}
}
}
};
return gadget.setSetting('jio_storage_description', configuration);
})
.push(function () {
return gadget.setSetting('jio_storage_name', "DAV");
})
.push(function () {
return gadget.reload();
});
}
var gadget_klass = rJS(window);
gadget_klass
.ready(function (g) {
g.props = {};
return g.getElement()
.push(function (element) {
g.props.element = element;
g.props.deferred = RSVP.defer();
return g.getSetting('jio_storage_name');
})
.push(function (jio_storage_name) {
if (jio_storage_name === "DAV") {
return g.getSetting('jio_storage_description')
.push(function (jio_storage_description) {
g.props.element.querySelector("input[name='dav_url']").value =
jio_storage_description.remote_sub_storage.sub_storage.sub_storage.url;
});
}
});
})
.declareAcquiredMethod("updateHeader", "updateHeader")
.declareAcquiredMethod("redirect", "redirect")
.declareAcquiredMethod("reload", "reload")
.declareAcquiredMethod("getSetting", "getSetting")
.declareAcquiredMethod("setSetting", "setSetting")
.declareMethod("render", function () {
var gadget = this;
return gadget.updateHeader({
title: "Connect To DAV Storage",
back_url: "#page=jio_configurator",
panel_action: false
}).push(function () {
return gadget.props.deferred.resolve();
});
})
/////////////////////////////////////////
// Form submit
/////////////////////////////////////////
.declareService(function () {
var gadget = this;
return new RSVP.Queue()
.push(function () {
return gadget.props.deferred.promise;
})
.push(function () {
return loopEventListener(
gadget.props.element.querySelector('form'),
'submit',
true,
function () {
return setjIODAVConfiguration(gadget);
}
);
});
});
}(window, rJS, RSVP));
\ No newline at end of file
<?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>content_type</string> </key>
<value> <string>text/javascript</string> </value>
</item>
<item>
<key> <string>default_reference</string> </key>
<value> <string>dav_delete.js</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>gadget_officejs_dav_delete_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>title</string> </key>
<value> <string>dav_delete</string> </value>
</item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</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>zope</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>1485781878.74</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>zope</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>956.64653.18502.64853</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>1485781872.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>zope</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>1485779356.31</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
This source diff could not be displayed because it is too large. You can view the blob instead.
<?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>handlebars.js</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>gadget_officejs_handlebars_js</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>title</string> </key>
<value> <string>handlebars JS</string> </value>
</item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</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>zope</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>1485779992.59</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>zope</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>956.64658.11040.49834</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>1485779668.98</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>zope</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>1485779255.66</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
...@@ -105,6 +105,12 @@ ...@@ -105,6 +105,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>Gadget OfficeJS Header</string> </value> <value> <string>Gadget OfficeJS Header</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -101,6 +101,12 @@ ...@@ -101,6 +101,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>Gadget OfficeJS Header JS</string> </value> <value> <string>Gadget OfficeJS Header JS</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -12,14 +12,12 @@ ...@@ -12,14 +12,12 @@
<script class="view-web-page-template" type="text/x-handlebars-template"> <script class="view-web-page-template" type="text/x-handlebars-template">
<a href="{{url_string}}" style="display: block; text-align: center; font-size: 1.7em;">{{url_string}}</a> <a href="{{url_string}}" style="display: block; text-align: center; font-size: 1.7em;">{{url_string}}</a>
<form class="view-web-page-form"> <form class="view-web-page-form">
<div class="center"> <div class="center">
<div class="ui-field-contain"> <div class="ui-field-contain">
<label data-i18n="Title:">Title:</label> <label data-i18n="Title:">Title:</label>
<input type="text" name="title" value="{{title}}"> <input type="text" name="title" value="{{title}}">
</div> </div>
<div class="ui-field-contain"> <div class="ui-field-contain">
<label data-i18n="Url:">Url:</label> <label data-i18n="Url:">Url:</label>
<input type="text" name="url_string" value="{{url_string}}"> <input type="text" name="url_string" value="{{url_string}}">
...@@ -38,7 +36,7 @@ ...@@ -38,7 +36,7 @@
</script> </script>
<script src="gadget_officejs_jio_url_view.js"></script> <script src="gadget_officejs_jio_bookmark_view.js"></script>
</head> </head>
......
...@@ -75,7 +75,7 @@ ...@@ -75,7 +75,7 @@
</item> </item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>gadget_officejs_jio_url_view.html</string> </value> <value> <string>gadget_officejs_jio_bookmark_view.html</string> </value>
</item> </item>
<item> <item>
<key> <string>description</string> </key> <key> <string>description</string> </key>
...@@ -85,7 +85,7 @@ ...@@ -85,7 +85,7 @@
</item> </item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>gadget_officejs_jio_url_view_html</string> </value> <value> <string>gadget_officejs_jio_bookmark_view_html</string> </value>
</item> </item>
<item> <item>
<key> <string>language</string> </key> <key> <string>language</string> </key>
...@@ -97,22 +97,20 @@ ...@@ -97,22 +97,20 @@
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
<value> <string>Web Page</string> </value> <value> <string>Web Page</string> </value>
</item> </item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Jio Bookmark View</string> </value> <value> <string>OfficeJS Jio Bookmark View</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -193,7 +191,7 @@ ...@@ -193,7 +191,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1468958515.0</float> <float>1485781391.48</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -238,7 +236,7 @@ ...@@ -238,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>955.49823.4948.58316</string> </value> <value> <string>958.24259.25538.21094</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -256,7 +254,7 @@ ...@@ -256,7 +254,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1480959906.78</float> <float>1493732989.43</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -279,7 +277,9 @@ ...@@ -279,7 +277,9 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>action</string> </key> <key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
...@@ -295,7 +295,7 @@ ...@@ -295,7 +295,7 @@
</item> </item>
<item> <item>
<key> <string>external_processing_state</string> </key> <key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value> <value> <string>empty</string> </value>
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
...@@ -313,7 +313,7 @@ ...@@ -313,7 +313,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1468958471.49</float> <float>1485779339.13</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
/*globals window, rJS, Handlebars, RSVP, loopEventListener, console*/ /*globals window, rJS, Handlebars, RSVP, loopEventListener, console*/
/*jslint indent: 2, nomen: true, maxlen: 80*/ /*jslint indent: 2, nomen: true, maxlen: 80*/
(function (window, RSVP, rJS, Handlebars, loopEventListener) { (function (window, RSVP, rJS, Handlebars, loopEventListener) {
"use strict"; "use strict";
function saveContent(gadget, submit_event) { function saveContent(gadget, submit_event) {
var i, var i,
doc = gadget.options.doc, doc = gadget.options.doc,
now = new Date(); now = new Date();
return new RSVP.Queue() doc.parent_relative_url = "bookmark_module";
.push(function () { doc.portal_type = "Bookmark";
return RSVP.all([ doc.modification_date = now.toISOString();
gadget.getSetting("portal_type"), for (i = 0; i < submit_event.target.length; i += 1) {
gadget.getSetting("parent_relative_url") // XXX Should check input type instead
]); if (submit_event.target[i].name) {
}) doc[submit_event.target[i].name] = submit_event.target[i].value;
.push(function (answer_list) { }
doc.portal_type = answer_list[0]; }
doc.parent_relative_url = answer_list[1]; return new RSVP.Queue()
doc.modification_date = now.toISOString(); .push(function () {
return gadget.put(gadget.options.jio_key, doc);
for (i = 0; i < submit_event.target.length; i += 1) { });
// XXX Should check input type instead }
if (submit_event.target[i].name) {
doc[submit_event.target[i].name] = submit_event.target[i].value; function maximize(gadget) {
} var iframe = gadget.props.element.querySelector('iframe'),
} iframe_class_string = iframe.getAttribute('class') || "",
class_name = "ui-content-maximize",
return gadget.put(gadget.options.jio_key, doc); class_index = iframe_class_string.indexOf(class_name);
}); if (class_index === -1) {
} iframe_class_string += ' ' + class_name;
iframe.setAttribute('style', '');
var gadget_klass = rJS(window), iframe.setAttribute('class', iframe_class_string);
source = gadget_klass.__template_element return;
.querySelector(".view-web-page-template") }
.innerHTML, iframe_class_string = iframe_class_string.substring(0, class_index)
template = Handlebars.compile(source); + iframe_class_string.substring(class_index + class_name.length);
iframe.setAttribute('style', 'width:100%; border: 0 none; height: 600px');
iframe.setAttribute('class', iframe_class_string);
gadget_klass return;
.ready(function (g) { }
g.props = {};
g.options = null; var gadget_klass = rJS(window),
return g.getElement() source = gadget_klass.__template_element
.push(function (element) { .querySelector(".view-web-page-template")
g.props.element = element; .innerHTML,
g.props.deferred = RSVP.defer(); template = Handlebars.compile(source);
});
})
gadget_klass
.declareAcquiredMethod("updateHeader", "updateHeader") .ready(function (g) {
.declareAcquiredMethod('getSetting', 'getSetting') g.props = {};
.declareAcquiredMethod("get", "jio_get") g.options = null;
.declareAcquiredMethod("translateHtml", "translateHtml") return g.getElement()
.declareAcquiredMethod("put", "jio_put") .push(function (element) {
.declareAcquiredMethod('allDocs', 'jio_allDocs') g.props.element = element;
.declareAcquiredMethod("redirect", "redirect") g.props.deferred = RSVP.defer();
});
.allowPublicAcquisition('triggerSubmit', function () { })
return this.props.element.querySelector('button').click();
}) .declareAcquiredMethod("updateHeader", "updateHeader")
.declareAcquiredMethod("get", "jio_get")
.declareMethod('triggerSubmit', function () { .declareAcquiredMethod("translateHtml", "translateHtml")
return this.props.element.querySelector('button').click(); .declareAcquiredMethod("put", "jio_put")
}) .declareAcquiredMethod('allDocs', 'jio_allDocs')
.declareAcquiredMethod("redirect", "redirect")
.declareMethod("render", function (options) {
var gadget = this; .allowPublicAcquisition('triggerMaximize', function () {
gadget.options = options; var gadget = this;
gadget.options.doc.title = gadget.options.doc.title || ""; return RSVP.Queue()
return new RSVP.Queue() .push(function () {
.push(function () { return maximize(gadget);
return gadget.translateHtml(template(options.doc)); })
}) .fail(function (e) {
.push(function (html) { console.log(e);
gadget.props.element.innerHTML = html; });
return gadget.updateHeader({ })
title: options.doc.title + " | Bookmark",
save_action: true .allowPublicAcquisition('triggerSubmit', function () {
}); return this.props.element.querySelector('button').click();
}) })
.push(function () {
return gadget.props.deferred.resolve(); .declareMethod('triggerSubmit', function () {
}); return this.props.element.querySelector('button').click();
}) })
///////////////////////////////////////// .declareMethod("render", function (options) {
// Render text content gadget var gadget = this;
///////////////////////////////////////// gadget.options = options;
.declareService(function () { gadget.options.doc.title = gadget.options.doc.title || "";
var gadget = this, return new RSVP.Queue()
text_gadget = null; .push(function () {
return gadget.translateHtml(template(options.doc));
return new RSVP.Queue() })
.push(function () { .push(function (html) {
return gadget.props.deferred.promise; gadget.props.element.innerHTML = html;
}); return gadget.updateHeader({
}) title: options.doc.title + " | Bookmark",
save_action: true
///////////////////////////////////////// });
// Form submit })
///////////////////////////////////////// .push(function () {
.declareService(function () { return gadget.props.deferred.resolve();
var gadget = this; });
})
return new RSVP.Queue()
.push(function () { /////////////////////////////////////////
return gadget.props.deferred.promise; // Render text content gadget
}) /////////////////////////////////////////
.push(function () { .declareService(function () {
return loopEventListener( var gadget = this,
gadget.props.element.querySelector('form'), text_gadget = null;
'submit',
true, return new RSVP.Queue()
function (event) { .push(function () {
return saveContent(gadget, event) return gadget.props.deferred.promise;
.push(function () { });
return gadget.redirect({page: "bookmark_list"}); })
});
} /////////////////////////////////////////
); // Form submit
}); /////////////////////////////////////////
}); .declareService(function () {
var gadget = this;
return new RSVP.Queue()
.push(function () {
return gadget.props.deferred.promise;
})
.push(function () {
return loopEventListener(
gadget.props.element.querySelector('form'),
'submit',
true,
function (event) {
return saveContent(gadget, event);
}
);
});
});
}(window, RSVP, rJS, Handlebars, loopEventListener)); }(window, RSVP, rJS, Handlebars, loopEventListener));
\ No newline at end of file
...@@ -69,9 +69,13 @@ ...@@ -69,9 +69,13 @@
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>content_type</string> </key>
<value> <string>text/javascript</string> </value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>gadget_officejs_jio_url_view.js</string> </value> <value> <string>gadget_officejs_jio_bookmark_view.js</string> </value>
</item> </item>
<item> <item>
<key> <string>description</string> </key> <key> <string>description</string> </key>
...@@ -81,7 +85,7 @@ ...@@ -81,7 +85,7 @@
</item> </item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>gadget_officejs_jio_url_view_js</string> </value> <value> <string>gadget_officejs_jio_bookmark_view_js</string> </value>
</item> </item>
<item> <item>
<key> <string>language</string> </key> <key> <string>language</string> </key>
...@@ -93,22 +97,20 @@ ...@@ -93,22 +97,20 @@
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
<value> <string>Web Script</string> </value> <value> <string>Web Script</string> </value>
</item> </item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Jio Bookmark view JS</string> </value> <value> <string>OfficeJS Jio Bookmark view JS</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -189,7 +191,7 @@ ...@@ -189,7 +191,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1468958553.47</float> <float>1485781322.76</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -234,7 +236,7 @@ ...@@ -234,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>955.49845.11611.51046</string> </value> <value> <string>956.64652.63438.53777</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -252,7 +254,7 @@ ...@@ -252,7 +254,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1480959915.54</float> <float>1485781314.69</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -275,7 +277,9 @@ ...@@ -275,7 +277,9 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>action</string> </key> <key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
...@@ -291,7 +295,7 @@ ...@@ -291,7 +295,7 @@
</item> </item>
<item> <item>
<key> <string>external_processing_state</string> </key> <key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value> <value> <string>empty</string> </value>
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
...@@ -309,7 +313,7 @@ ...@@ -309,7 +313,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1468958530.09</float> <float>1485779337.2</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -103,6 +103,12 @@ ...@@ -103,6 +103,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>Jio Gadget for OfficeJS</string> </value> <value> <string>Jio Gadget for OfficeJS</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -101,6 +101,12 @@ ...@@ -101,6 +101,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>Jio Gadget JS</string> </value> <value> <string>Jio Gadget JS</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -143,11 +143,15 @@ ...@@ -143,11 +143,15 @@
<value> <string>OfficeJS Jio Web Illustration View</string> </value> <value> <string>OfficeJS Jio Web Illustration View</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -259,7 +263,7 @@ ...@@ -259,7 +263,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>supercedriclen</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -273,7 +277,7 @@ ...@@ -273,7 +277,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>951.29240.27236.54562</string> </value> <value> <string>956.64450.52709.9386</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -291,7 +295,7 @@ ...@@ -291,7 +295,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1464253011.4</float> <float>1485781082.56</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -139,11 +139,15 @@ ...@@ -139,11 +139,15 @@
<value> <string>OfficeJS Jio Web Illustration View JS</string> </value> <value> <string>OfficeJS Jio Web Illustration View JS</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -269,7 +273,7 @@ ...@@ -269,7 +273,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>954.15924.25382.7799</string> </value> <value> <string>956.64450.52709.9386</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -287,7 +291,7 @@ ...@@ -287,7 +291,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1475164165.45</float> <float>1485781045.04</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -108,11 +108,15 @@ ...@@ -108,11 +108,15 @@
<value> <string>OfficeJS Jio Web Page View</string> </value> <value> <string>OfficeJS Jio Web Page View</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -232,7 +236,7 @@ ...@@ -232,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>954.38520.8745.1109</string> </value> <value> <string>956.64450.52709.9386</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -250,7 +254,7 @@ ...@@ -250,7 +254,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1476433509.51</float> <float>1485781000.66</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -104,11 +104,15 @@ ...@@ -104,11 +104,15 @@
<value> <string>OfficeJS Jio Web Page View JS</string> </value> <value> <string>OfficeJS Jio Web Page View JS</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -228,7 +232,7 @@ ...@@ -228,7 +232,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>954.15935.39380.57002</string> </value> <value> <string>956.64450.52709.9386</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -246,7 +250,7 @@ ...@@ -246,7 +250,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1475164868.59</float> <float>1485780967.55</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, user-scalable=no" />
<title>Jio Gadget</title>
<!-- renderjs -->
<script src="rsvp.js" type="text/javascript"></script>
<script src="renderjs.js" type="text/javascript"></script>
<script src="jiodev.js" type="text/javascript"></script>
<!-- custom script -->
<script src="gadget_officejs_liberator.js" type="text/javascript"></script>
</head>
<body>
</body>
</html>
\ No newline at end of file
<?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_liberator.html</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>Jio access</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>gadget_officejs_liberator_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>title</string> </key>
<value> <string>Liberator Gadget</string> </value>
</item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</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>zope</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>1485781795.26</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>zope</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>956.64903.6566.48281</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>1485868069.39</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>zope</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>1485779372.4</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
/*global window, rJS, jIO, FormData, RSVP, MessageChannel */
/*jslint indent: 2, maxerr: 3 */
(function (window, rJS, jIO, MessageChannel, RSVP) {
"use strict";
rJS(window)
.ready(function (gadget) {
gadget.state_parameter_dict = {};
})
.declareMethod('createStorage', function (erp5_url) {
this.state_parameter_dict.jio_storage = jIO.createJIO({
use_remote_post: false,
conflict_handling: 1,
check_local_modification: true,
check_local_creation: true,
check_local_deletion: false,
check_remote_modification: false,
check_remote_creation: false,
check_remote_deletion: false,
type: "replicate",
query: {query: 'content_type: "text%"'},
signature_storage: {
type: "indexeddb",
database: "sync_hash"
},
local_sub_storage: {
type: "uuid",
sub_storage: {
type: "query",
sub_storage: {
type: "indexeddb",
database: window.location.origin +
window.location.pathname.replace(
"gadget_officejs_liberator.html",
""
)
}
}
},
remote_sub_storage: {
type: "mapping",
id: ["equalSubProperty", "url_string"],
property: {
"relative_url": ["ignore"],
"version": ["ignore"]
},
sub_storage: {
type: "erp5",
url: erp5_url + "/hateoas",
default_view_reference: "jio_view"
}
}
});
})
.declareMethod('allDocs', function () {
var storage = this.state_parameter_dict.jio_storage;
return storage.allDocs.apply(storage, arguments);
})
.declareMethod('allAttachments', function () {
var storage = this.state_parameter_dict.jio_storage;
return storage.allAttachments.apply(storage, arguments);
})
.declareMethod('get', function () {
var storage = this.state_parameter_dict.jio_storage;
return storage.get.apply(storage, arguments);
})
.declareMethod('put', function () {
var storage = this.state_parameter_dict.jio_storage;
return storage.put.apply(storage, arguments);
})
.declareMethod('post', function () {
var storage = this.state_parameter_dict.jio_storage;
return storage.post.apply(storage, arguments);
})
.declareMethod('remove', function () {
var storage = this.state_parameter_dict.jio_storage;
return storage.remove.apply(storage, arguments);
})
.declareMethod('getAttachment', function () {
var storage = this.state_parameter_dict.jio_storage;
return storage.getAttachment.apply(storage, arguments);
})
.declareMethod('putAttachment', function () {
var storage = this.state_parameter_dict.jio_storage;
return storage.putAttachment.apply(storage, arguments);
})
.declareMethod('removeAttachment', function () {
var storage = this.state_parameter_dict.jio_storage;
return storage.removeAttachment.apply(storage, arguments);
})
.declareMethod('repair', function () {
var storage = this.state_parameter_dict.jio_storage;
return storage.repair.apply(storage, arguments);
});
}(window, rJS, jIO, MessageChannel, RSVP));
\ No newline at end of file
...@@ -2,30 +2,36 @@ ...@@ -2,30 +2,36 @@
<ZopeData> <ZopeData>
<record id="1" aka="AAAAAAAAAAE="> <record id="1" aka="AAAAAAAAAAE=">
<pickle> <pickle>
<global name="Web Section" module="erp5.portal_type"/> <global name="Web Script" module="erp5.portal_type"/>
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item> <item>
<key> <string>_Add_portal_content_Permission</string> </key> <key> <string>_Access_contents_information_Permission</string> </key>
<value> <value>
<tuple> <tuple>
<string>Anonymous</string>
<string>Assignee</string>
<string>Assignor</string> <string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string> <string>Manager</string>
<string>Owner</string>
</tuple> </tuple>
</value> </value>
</item> </item>
<item> <item>
<key> <string>_Add_portal_folders_Permission</string> </key> <key> <string>_Add_portal_content_Permission</string> </key>
<value> <value>
<tuple> <tuple>
<string>Assignee</string>
<string>Assignor</string> <string>Assignor</string>
<string>Manager</string> <string>Manager</string>
</tuple> </tuple>
</value> </value>
</item> </item>
<item> <item>
<key> <string>_Copy_or_Move_Permission</string> </key> <key> <string>_Change_local_roles_Permission</string> </key>
<value> <value>
<tuple> <tuple>
<string>Assignor</string> <string>Assignor</string>
...@@ -34,123 +40,62 @@ ...@@ -34,123 +40,62 @@
</value> </value>
</item> </item>
<item> <item>
<key> <string>_Delete_objects_Permission</string> </key> <key> <string>_Modify_portal_content_Permission</string> </key>
<value> <value>
<tuple> <tuple>
<string>Assignee</string>
<string>Assignor</string> <string>Assignor</string>
<string>Manager</string> <string>Manager</string>
</tuple> </tuple>
</value> </value>
</item> </item>
<item> <item>
<key> <string>_Modify_portal_content_Permission</string> </key> <key> <string>_View_Permission</string> </key>
<value> <value>
<tuple> <tuple>
<string>Anonymous</string>
<string>Assignee</string> <string>Assignee</string>
<string>Assignor</string> <string>Assignor</string>
<string>Associate</string>
<string>Auditor</string>
<string>Manager</string> <string>Manager</string>
<string>Owner</string> <string>Owner</string>
</tuple> </tuple>
</value> </value>
</item> </item>
<item> <item>
<key> <string>__before_publishing_traverse__</string> </key> <key> <string>content_md5</string> </key>
<value>
<object>
<klass>
<global name="MultiHook" module="ZPublisher.BeforeTraverse"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_defined_in_class</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>_hookname</string> </key>
<value> <string>__before_publishing_traverse__</string> </value>
</item>
<item>
<key> <string>_list</string> </key>
<value>
<list>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</list>
</value>
</item>
<item>
<key> <string>_prior</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>__before_traverse__</string> </key>
<value> <value>
<dictionary> <none/>
<item>
<key>
<tuple>
<int>99</int>
<string>ERP5 Web Section/rjsunsafe</string>
</tuple>
</key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
</dictionary>
</value> </value>
</item> </item>
<item> <item>
<key> <string>__translation_dict</string> </key> <key> <string>content_type</string> </key>
<value> <value> <string>application/javascript</string> </value>
<dictionary/>
</value>
</item> </item>
<item> <item>
<key> <string>_identity_criterion</string> </key> <key> <string>default_reference</string> </key>
<value> <value> <string>gadget_officejs_liberator.js</string> </value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item> </item>
<item> <item>
<key> <string>_range_criterion</string> </key> <key> <string>description</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent> <none/>
</value> </value>
</item> </item>
<item> <item>
<key> <string>categories</string> </key> <key> <string>id</string> </key>
<value> <value> <string>gadget_officejs_liberator_js</string> </value>
<tuple>
<string>caching_policy/must-revalidate</string>
</tuple>
</value>
</item> </item>
<item> <item>
<key> <string>description</string> </key> <key> <string>language</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>empty_criterion_valid</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>rjsunsafe</string> </value>
</item>
<item> <item>
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
<value> <string>Web Section</string> </value> <value> <string>Web Script</string> </value>
</item> </item>
<item> <item>
<key> <string>short_title</string> </key> <key> <string>short_title</string> </key>
...@@ -158,66 +103,30 @@ ...@@ -158,66 +103,30 @@
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>skin_selection_name</string> </key>
<value> <string>RJSUnsafe</string> </value>
</item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>RJS Unsafe</string> </value> <value> <string>Liberator Gadget JS</string> </value>
</item> </item>
<item> <item>
<key> <string>visible</string> </key> <key> <string>url_string</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent> <none/>
</value> </value>
</item> </item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="WebSectionTraversalHook" module="Products.ERP5.Document.WebSection"/>
</pickle>
<pickle>
<dictionary/>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item> <item>
<key> <string>data</string> </key> <key> <string>version</string> </key>
<value> <value> <string>001</string> </value>
<dictionary/>
</value>
</item> </item>
</dictionary>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item> <item>
<key> <string>data</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<dictionary/> <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="5" aka="AAAAAAAAAAU="> <record id="2" aka="AAAAAAAAAAI=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -228,15 +137,21 @@ ...@@ -228,15 +137,21 @@
<value> <value>
<dictionary> <dictionary>
<item> <item>
<key> <string>category_publication_workflow</string> </key> <key> <string>document_publication_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAY=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
<item> <item>
<key> <string>edit_workflow</string> </key> <key> <string>edit_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAc=</string> </persistent> <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> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -245,7 +160,7 @@ ...@@ -245,7 +160,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="6" aka="AAAAAAAAAAY="> <record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle> </pickle>
...@@ -256,9 +171,7 @@ ...@@ -256,9 +171,7 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>action</string> </key> <key> <string>action</string> </key>
<value> <value> <string>publish_alive</string> </value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
...@@ -284,7 +197,7 @@ ...@@ -284,7 +197,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1468083731.46</float> <float>1485781694.71</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -293,14 +206,14 @@ ...@@ -293,14 +206,14 @@
</item> </item>
<item> <item>
<key> <string>validation_state</string> </key> <key> <string>validation_state</string> </key>
<value> <string>embedded</string> </value> <value> <string>published_alive</string> </value>
</item> </item>
</dictionary> </dictionary>
</list> </list>
</tuple> </tuple>
</pickle> </pickle>
</record> </record>
<record id="7" aka="AAAAAAAAAAc="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle> </pickle>
...@@ -329,7 +242,7 @@ ...@@ -329,7 +242,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>952.28990.12586.6929</string> </value> <value> <string>956.64692.55224.61132</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -347,7 +260,66 @@ ...@@ -347,7 +260,66 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1478604794.1</float> <float>1485781806.83</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>zope</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>1485779370.64</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
This source diff could not be displayed because it is too large. You can view the blob instead.
<!doctype html> <!doctype html>
<html> <html>
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<title>OfficeJS Add Bookmark</title> <title>OfficeJS Add Bookmark</title>
<script src="rsvp.js"></script> <script src="rsvp.js"></script>
<script src="renderjs.js"></script> <script src="renderjs.js"></script>
<script src="handlebars.js"></script> <script src="handlebars.js"></script>
<script src="gadget_officejs_page_add_bookmark.js"></script> <script src="gadget_officejs_page_add_bookmark.js"></script>
</head> </head>
<body> <body>
</body> </body>
</html> </html>
\ No newline at end of file
...@@ -63,14 +63,6 @@ ...@@ -63,14 +63,6 @@
</tuple> </tuple>
</value> </value>
</item> </item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>contributor/person_module/1</string>
</tuple>
</value>
</item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <value>
...@@ -81,14 +73,6 @@ ...@@ -81,14 +73,6 @@
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
<value> <string>text/html</string> </value> <value> <string>text/html</string> </value>
</item> </item>
<item>
<key> <string>creators</string> </key>
<value>
<tuple>
<string>cedric.le.ninivin</string>
</tuple>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>gadget_officejs_page_add_bookmark.html</string> </value> <value> <string>gadget_officejs_page_add_bookmark.html</string> </value>
...@@ -109,45 +93,24 @@ ...@@ -109,45 +93,24 @@
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>modification_date</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1455284351.46</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
<item> <item>
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
<value> <string>Web Page</string> </value> <value> <string>Web Page</string> </value>
</item> </item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Add Bookmark</string> </value> <value> <string>OfficeJS Add Bookmark</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -228,7 +191,7 @@ ...@@ -228,7 +191,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1471549670.93</float> <float>1485780873.2</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -273,7 +236,7 @@ ...@@ -273,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>953.21235.57104.50295</string> </value> <value> <string>956.64678.36333.6946</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -291,7 +254,7 @@ ...@@ -291,7 +254,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1474013662.65</float> <float>1485780894.37</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -314,7 +277,9 @@ ...@@ -314,7 +277,9 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>action</string> </key> <key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
...@@ -330,7 +295,7 @@ ...@@ -330,7 +295,7 @@
</item> </item>
<item> <item>
<key> <string>external_processing_state</string> </key> <key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value> <value> <string>empty</string> </value>
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
...@@ -348,7 +313,7 @@ ...@@ -348,7 +313,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1471549602.17</float> <float>1485779320.09</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
/*globals window, RSVP, rJS*/ /*globals window, RSVP, rJS*/
/*jslint indent: 2, nomen: true, maxlen: 80*/ /*jslint indent: 2, nomen: true, maxlen: 80*/
(function (window, RSVP, rJS) { (function (window, RSVP, rJS) {
"use strict"; "use strict";
var gadget_klass = rJS(window); var gadget_klass = rJS(window);
gadget_klass gadget_klass
.ready(function (g) { .ready(function (g) {
g.props = {}; g.props = {};
return g.getElement() return g.getElement()
.push(function (element) { .push(function (element) {
g.props.element = element; g.props.element = element;
g.props.deferred = RSVP.defer(); g.props.deferred = RSVP.defer();
}); });
}) })
.declareAcquiredMethod("post", "jio_post") .declareAcquiredMethod("post", "jio_post")
.declareAcquiredMethod("redirect", "redirect") .declareAcquiredMethod("redirect", "redirect")
.declareAcquiredMethod("updateHeader", "updateHeader") .declareAcquiredMethod("updateHeader", "updateHeader")
.declareAcquiredMethod('getSetting', 'getSetting') .declareAcquiredMethod('getSetting', 'getSetting')
.declareMethod("render", function (options) { .declareMethod("render", function (options) {
var gadget = this; var gadget = this;
gadget.props.options = options; gadget.props.options = options;
return new RSVP.Queue() return new RSVP.Queue()
.push(function () { .push(function () {
return RSVP.all([ return RSVP.all([
gadget.getSetting("portal_type"), gadget.getSetting("portal_type"),
gadget.getSetting("document_title"), gadget.getSetting("document_title"),
gadget.getSetting("parent_relative_url") gadget.getSetting("parent_relative_url")
]); ]);
}).push(function (answer_list) { }).push(function (answer_list) {
gadget.props.portal_type = answer_list[0]; gadget.props.portal_type = answer_list[0];
gadget.props.document_title = answer_list[1]; gadget.props.document_title = answer_list[1];
gadget.props.parent_relative_url = answer_list[2]; gadget.props.parent_relative_url = answer_list[2];
return gadget.updateHeader({ return gadget.updateHeader({
title: "New " + gadget.props.document_title title: "New " + gadget.props.document_title
}); });
}) })
.push(function () { .push(function () {
gadget.props.deferred.resolve(); gadget.props.deferred.resolve();
}); });
}) })
.declareService(function () { .declareService(function () {
var gadget = this; var gadget = this;
return new RSVP.Queue() return new RSVP.Queue()
.push(function () { .push(function () {
return gadget.props.deferred.promise; return gadget.props.deferred.promise;
}) })
.push(function () { .push(function () {
var doc = { var doc = {
// XXX Hardcoded // XXX Hardcoded
parent_relative_url: gadget.props.parent_relative_url, parent_relative_url: gadget.props.parent_relative_url,
portal_type: gadget.props.portal_type portal_type: gadget.props.portal_type
}; };
return gadget.post(doc); return gadget.post(doc);
}) })
.push(function (data) { .push(function (data) {
return gadget.redirect({ return gadget.redirect({
jio_key: data, jio_key: data,
page: "view" page: "view"
}); });
}); });
}); });
}(window, RSVP, rJS)); }(window, RSVP, rJS));
\ No newline at end of file
...@@ -63,14 +63,6 @@ ...@@ -63,14 +63,6 @@
</tuple> </tuple>
</value> </value>
</item> </item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>contributor/person_module/1</string>
</tuple>
</value>
</item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <value>
...@@ -78,12 +70,8 @@ ...@@ -78,12 +70,8 @@
</value> </value>
</item> </item>
<item> <item>
<key> <string>creators</string> </key> <key> <string>content_type</string> </key>
<value> <value> <string>text/javascript</string> </value>
<tuple>
<string>cedric.le.ninivin</string>
</tuple>
</value>
</item> </item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
...@@ -105,45 +93,24 @@ ...@@ -105,45 +93,24 @@
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>modification_date</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1455284351.49</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
<item> <item>
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
<value> <string>Web Script</string> </value> <value> <string>Web Script</string> </value>
</item> </item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Add Bookmark JS</string> </value> <value> <string>OfficeJS Add Bookmark JS</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -224,7 +191,7 @@ ...@@ -224,7 +191,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1471549673.52</float> <float>1485780820.98</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -269,7 +236,7 @@ ...@@ -269,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>953.21219.58513.54579</string> </value> <value> <string>956.64652.42771.37444</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -287,7 +254,7 @@ ...@@ -287,7 +254,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1474013855.64</float> <float>1485780817.22</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -310,7 +277,9 @@ ...@@ -310,7 +277,9 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>action</string> </key> <key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
...@@ -326,7 +295,7 @@ ...@@ -326,7 +295,7 @@
</item> </item>
<item> <item>
<key> <string>external_processing_state</string> </key> <key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value> <value> <string>empty</string> </value>
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
...@@ -344,7 +313,7 @@ ...@@ -344,7 +313,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1471549600.18</float> <float>1485779318.49</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -144,9 +144,7 @@ ...@@ -144,9 +144,7 @@
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <value> <string>001</string> </value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
...@@ -259,7 +257,7 @@ ...@@ -259,7 +257,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>supercedriclen</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -273,7 +271,7 @@ ...@@ -273,7 +271,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>951.28177.1205.52650</string> </value> <value> <string>956.64450.52709.9386</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -291,7 +289,7 @@ ...@@ -291,7 +289,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1464189188.67</float> <float>1485956755.12</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -140,9 +140,7 @@ ...@@ -140,9 +140,7 @@
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <value> <string>001</string> </value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
...@@ -255,7 +253,7 @@ ...@@ -255,7 +253,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>supercedriclen</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -269,7 +267,7 @@ ...@@ -269,7 +267,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>951.28187.42881.35293</string> </value> <value> <string>956.64450.52709.9386</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -287,7 +285,7 @@ ...@@ -287,7 +285,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1464189839.22</float> <float>1485956748.55</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -26,4 +26,4 @@ ...@@ -26,4 +26,4 @@
</form> </form>
</body> </body>
</html> </html>
\ No newline at end of file
...@@ -143,11 +143,15 @@ ...@@ -143,11 +143,15 @@
<value> <string>OfficeJS Bookmark Dispatcher</string> </value> <value> <string>OfficeJS Bookmark Dispatcher</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -273,7 +277,7 @@ ...@@ -273,7 +277,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>955.22589.46402.6092</string> </value> <value> <string>956.64677.1467.64529</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -291,7 +295,7 @@ ...@@ -291,7 +295,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1479469812.2</float> <float>1485780792.24</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
/*globals window, RSVP, rJS*/ /*globals window, RSVP, rJS*/
/*jslint indent: 2, nomen: true, maxlen: 80*/ /*jslint indent: 2, nomen: true, maxlen: 80*/
(function (window, RSVP, rJS) { (function (window, RSVP, rJS) {
"use strict"; "use strict";
function getSearchedString() { function getSearchedString() {
var regex = new RegExp("[\\#?&]search=([^&]*)"), var regex = new RegExp("[\\#?&]search=([^&]*)"),
results = regex.exec(window.location.hash); results = regex.exec(window.location.hash);
return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " ")); return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
} }
function updateSearchUrl(event) { function updateSearchUrl(event) {
var gadget = this; var gadget = this;
makeOptionDict(gadget) makeOptionDict(gadget)
.push(function() { .push(function() {
return gadget.getSetting("option"); return gadget.getSetting("option");
}) })
.push(function(option) { .push(function(option) {
return gadget.getUrlFor(option); return gadget.getUrlFor(option);
}) })
.push(function(url) { .push(function(url) {
url = window.location.href + url; url = window.location.href + url;
gadget.props.element.getElementsByClassName("search-engine-url")[0].innerHTML = url; gadget.props.element.getElementsByClassName("search-engine-url")[0].innerHTML = url;
}); });
} }
rJS(window) rJS(window)
.ready(function (g) { .ready(function (g) {
g.props = {}; g.props = {};
return g.getElement() return g.getElement()
.push(function (element) { .push(function (element) {
g.props.element = element; g.props.element = element;
}); });
}) })
.declareAcquiredMethod("translate", "translate") .declareAcquiredMethod("translate", "translate")
.declareAcquiredMethod("getUrlFor", "getUrlFor") .declareAcquiredMethod("getUrlFor", "getUrlFor")
.declareAcquiredMethod("redirect", "redirect") .declareAcquiredMethod("redirect", "redirect")
.declareAcquiredMethod("updateHeader", "updateHeader") .declareAcquiredMethod("updateHeader", "updateHeader")
.declareAcquiredMethod('getSetting', 'getSetting') .declareAcquiredMethod('getSetting', 'getSetting')
.declareAcquiredMethod("jio_allDocs", "jio_allDocs") .declareAcquiredMethod("jio_allDocs", "jio_allDocs")
.declareAcquiredMethod("getSetting", "getSetting") .declareAcquiredMethod("getSetting", "getSetting")
.declareAcquiredMethod("setSetting", "setSetting") .declareAcquiredMethod("setSetting", "setSetting")
.declareMethod("render", function (options) { .declareMethod("render", function (options) {
var gadget = this, var gadget = this,
portal_type = null, portal_type = null,
gadget_option_dict = options, option = {
option = { auto_redirect: false,
auto_redirect: false, search_engine: ""
search_engine: "" };
};
return new RSVP.Queue()
return new RSVP.Queue() .push(gadget.updateHeader({title: 'Search in Bookmarks'}))
.push(gadget.updateHeader({title: 'Search in Bookmarks'})) .push(function () {
.push(function () { return gadget.getSetting("portal_type")
return gadget.getSetting("portal_type") .push(function(result) {
.push(function(result) { portal_type = result;
portal_type = result; });
}); })
}) .push(function (){
.push(function (){ return gadget.getSetting("option")
return gadget.getSetting("option") .push(function(result) {
.push(function(result) { if (result) {
if (result) { option = result;
option = result; }
} });
}); })
}) .push(function () {
.push(function () { var search = window.decodeURIComponent(getSearchedString()),
var search = gadget_option_dict.search, query = "";
query = ""; if (search) {
if (search) { query = {
query = { query: '(title:"%' + search + '%" OR url_string:"%' + search + '%" OR description:"%' + search + '%") AND portal_type:"' + portal_type + '"',
query: '(title:"%' + search + '%" OR url_string:"%' + search + '%" OR description:"%' + search + '%") AND portal_type:"' + portal_type + '"', select_list: ['title', 'url_string', 'description'],
select_list: ['title', 'url_string', 'description'], };
}; return gadget.jio_allDocs(query)
return gadget.jio_allDocs(query) .push(function (query_result) {
.push(function (query_result) { var result_list_length = query_result.data.rows.length;
var result_list_length = query_result.data.rows.length;
// if 0 result, let's search with a real search engine
// if 0 result, let's search with a real search engine if (result_list_length === 0 && option.search_engine !== '') {
if (result_list_length === 0 && option.search_engine !== '') { window.location.href = option.search_engine + window.encodeURIComponent(search);
window.location.href = option.search_engine + window.encodeURIComponent(search); }
} // if 1 result, we go there
// if 1 result, we go there else if (result_list_length === 1 && option.auto_redirect === true) {
else if (result_list_length === 1 && option.auto_redirect === true) { window.location.href = query_result.data.rows[0].value.url_string;
window.location.href = query_result.data.rows[0].value.url_string; }
} else {
else { return gadget.getUrlFor({page: "bookmark_list", search: window.encodeURIComponent(search)})
return gadget.getUrlFor({page: "bookmark_list", search: window.encodeURIComponent(search)}) .push(function (url) {
.push(function (url) { window.location.href = url;
window.location.href = url; });
}); }
} });
}); }
} });
}); })
}) .onEvent("submit", function () {
.onEvent("submit", function () { var gadget = this;
var gadget = this; //var option_parameter = gadget.getSetting("option");
//var option_parameter = gadget.getSetting("option"); var option_parameter = {
var option_parameter = { search: window.encodeURIComponent(gadget.props.element.getElementsByTagName('input')[0].value),
search: window.encodeURIComponent(gadget.props.element.getElementsByTagName('input')[0].value), page: 'bookmark_dispatcher'
page: 'bookmark_dispatcher' };
}; return gadget.getUrlFor(option_parameter)
return gadget.getUrlFor(option_parameter) .push(function (url) {
.push(function (url) { window.location.href = url;
window.location.href = url; });
}); });
});
}(window, RSVP, rJS)); }(window, RSVP, rJS));
\ No newline at end of file
...@@ -63,14 +63,6 @@ ...@@ -63,14 +63,6 @@
</tuple> </tuple>
</value> </value>
</item> </item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>contributor/person_module/1</string>
</tuple>
</value>
</item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <value>
...@@ -78,12 +70,8 @@ ...@@ -78,12 +70,8 @@
</value> </value>
</item> </item>
<item> <item>
<key> <string>creators</string> </key> <key> <string>content_type</string> </key>
<value> <value> <string>text/javascript</string> </value>
<tuple>
<string>cedric.le.ninivin</string>
</tuple>
</value>
</item> </item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
...@@ -105,45 +93,24 @@ ...@@ -105,45 +93,24 @@
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>modification_date</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1455284352.18</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
<item> <item>
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
<value> <string>Web Script</string> </value> <value> <string>Web Script</string> </value>
</item> </item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Bookmark Dispatcher JS</string> </value> <value> <string>OfficeJS Bookmark Dispatcher JS</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -224,7 +191,7 @@ ...@@ -224,7 +191,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1478605449.85</float> <float>1485780752.49</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -269,7 +236,7 @@ ...@@ -269,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>955.49852.11197.39970</string> </value> <value> <string>956.64652.37486.36010</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -287,7 +254,7 @@ ...@@ -287,7 +254,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1480959188.76</float> <float>1485780744.68</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -310,7 +277,9 @@ ...@@ -310,7 +277,9 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>action</string> </key> <key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
...@@ -326,7 +295,7 @@ ...@@ -326,7 +295,7 @@
</item> </item>
<item> <item>
<key> <string>external_processing_state</string> </key> <key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value> <value> <string>empty</string> </value>
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
...@@ -344,7 +313,7 @@ ...@@ -344,7 +313,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1478605233.57</float> <float>1485779312.96</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -143,11 +143,15 @@ ...@@ -143,11 +143,15 @@
<value> <string>OfficeJS Bookmark List</string> </value> <value> <string>OfficeJS Bookmark List</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -273,7 +277,7 @@ ...@@ -273,7 +277,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>955.8037.23694.47974</string> </value> <value> <string>956.64450.52709.9386</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -291,7 +295,7 @@ ...@@ -291,7 +295,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1478536688.15</float> <float>1485780721.46</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
/*globals window, RSVP, rJS*/ /*globals window, RSVP, rJS*/
/*jslint indent: 2, nomen: true, maxlen: 80*/ /*jslint indent: 2, nomen: true, maxlen: 80*/
(function (window, RSVP, rJS) { (function (window, RSVP, rJS) {
"use strict"; "use strict";
rJS(window) rJS(window)
.ready(function (g) { .ready(function (g) {
g.props = {}; g.props = {};
return g.getElement() return g.getElement()
.push(function (element) { .push(function (element) {
g.props.element = element; g.props.element = element;
}); });
}) })
.ready(function (g) { .ready(function (g) {
return new RSVP.Queue() return new RSVP.Queue()
.push(function () { .push(function () {
return RSVP.all([ return RSVP.all([
g.translate("validated"), g.translate("validated"),
g.translate("invalidated"), g.translate("invalidated"),
g.translate("Not synced!"), g.translate("Not synced!"),
g.translate("Waiting for approval") g.translate("Waiting for approval")
]); ]);
}) })
.push(function (result_list) { .push(function (result_list) {
g.props.translation_dict = { g.props.translation_dict = {
"validated": result_list[0], "validated": result_list[0],
"invalidated": result_list[1], "invalidated": result_list[1],
"Not synced!": result_list[2], "Not synced!": result_list[2],
"Waiting for approval": result_list[3] "Waiting for approval": result_list[3]
}; };
}); });
}) })
.declareAcquiredMethod("translate", "translate") .declareAcquiredMethod("translate", "translate")
.declareAcquiredMethod("getUrlFor", "getUrlFor") .declareAcquiredMethod("getUrlFor", "getUrlFor")
.declareAcquiredMethod("updateHeader", "updateHeader") .declareAcquiredMethod("updateHeader", "updateHeader")
.declareAcquiredMethod('getSetting', 'getSetting') .declareAcquiredMethod('getSetting', 'getSetting')
.declareAcquiredMethod("jio_allDocs", "jio_allDocs") .declareAcquiredMethod("jio_allDocs", "jio_allDocs")
.allowPublicAcquisition("jio_allDocs", function (param_list) { .allowPublicAcquisition("jio_allDocs", function (param_list) {
var gadget = this; var gadget = this;
return this.jio_allDocs.apply(this, param_list) return this.jio_allDocs.apply(this, param_list)
.push(function (result) { .push(function (result) {
var i, var i,
len; len;
for (i = 0, len = result.data.total_rows; i < len; i += 1) { for (i = 0, len = result.data.total_rows; i < len; i += 1) {
// XXX jIO does not create UUID with module inside // XXX jIO does not create UUID with module inside
if (result.data.rows[i].id.indexOf("module") === -1) { if (result.data.rows[i].id.indexOf("module") === -1) {
result.data.rows[i].value.state = result.data.rows[i].value.state =
gadget.props.translation_dict["Not synced!"]; gadget.props.translation_dict["Not synced!"];
} else { } else {
result.data.rows[i].value.state = result.data.rows[i].value.state =
gadget.props.translation_dict[ gadget.props.translation_dict[
result.data.rows[i].value.local_state || result.data.rows[i].value.local_state ||
"Waiting for approval" "Waiting for approval"
]; ];
} }
} }
return result; return result;
}); });
}) })
.declareMethod("render", function (options) { .declareMethod("render", function (options) {
var gadget = this; var gadget = this;
return new RSVP.Queue() return new RSVP.Queue()
.push(function () { .push(function () {
return RSVP.all([ return RSVP.all([
gadget.getSetting("portal_type"), gadget.getSetting("portal_type"),
gadget.getSetting("bookmark_title_plural") gadget.getSetting("document_title_plural")
]); ]);
}) })
.push(function (answer_list) { .push(function (answer_list) {
gadget.props.portal_type = answer_list[0]; gadget.props.portal_type = answer_list[0];
gadget.props.bookmark_title_plural = answer_list[1]; gadget.props.bookmark_title_plural = answer_list[1];
return gadget.getUrlFor({page: "add_bookmark"}); return gadget.getUrlFor({page: "add_bookmark"});
}) })
.push(function (url) { .push(function (url) {
return gadget.updateHeader({ return gadget.updateHeader({
title: gadget.props.bookmark_title_plural, title: gadget.props.bookmark_title_plural,
add_url: url add_url: url
}); });
}) })
.push(function () { .push(function () {
return gadget.getDeclaredGadget("listbox"); return gadget.getDeclaredGadget("listbox");
}) })
.push(function (listbox) { .push(function (listbox) {
return listbox.render({ return listbox.render({
search_page: 'bookmark_list', search_page: 'bookmark_list',
search: options.search, search: options.search,
column_list: [{ column_list: [{
select: 'title', select: 'title',
title: 'Title' title: 'Title'
}, { }, {
select: 'url_string', select: 'url_string',
title: 'URL' title: 'URL'
}, { }, {
select: 'description', select: 'description',
title: 'Description' title: 'Description'
}], }],
query: { query: {
query: 'portal_type:("' + gadget.props.portal_type + '")', query: 'portal_type:("' + gadget.props.portal_type + '")',
select_list: ['title', 'url_string', 'description'], select_list: ['title', 'url_string', 'description'],
limit: [0, 30], limit: [0, 30],
sort_on: [["modification_date", "descending"]] sort_on: [["modification_date", "descending"]]
} }
}); });
}); });
}); });
}(window, RSVP, rJS)); }(window, RSVP, rJS));
\ No newline at end of file
...@@ -63,14 +63,6 @@ ...@@ -63,14 +63,6 @@
</tuple> </tuple>
</value> </value>
</item> </item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>contributor/person_module/1</string>
</tuple>
</value>
</item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <value>
...@@ -78,12 +70,8 @@ ...@@ -78,12 +70,8 @@
</value> </value>
</item> </item>
<item> <item>
<key> <string>creators</string> </key> <key> <string>content_type</string> </key>
<value> <value> <string>text/javascript</string> </value>
<tuple>
<string>cedric.le.ninivin</string>
</tuple>
</value>
</item> </item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
...@@ -105,45 +93,24 @@ ...@@ -105,45 +93,24 @@
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>modification_date</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1455284352.18</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
<item> <item>
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
<value> <string>Web Script</string> </value> <value> <string>Web Script</string> </value>
</item> </item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Bookmark List JS</string> </value> <value> <string>OfficeJS Bookmark List JS</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -224,7 +191,7 @@ ...@@ -224,7 +191,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1468955568.76</float> <float>1485780679.17</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -269,7 +236,7 @@ ...@@ -269,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>953.62286.195.51114</string> </value> <value> <string>956.64652.30281.58163</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -287,7 +254,7 @@ ...@@ -287,7 +254,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1478609077.97</float> <float>1485780674.63</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -310,7 +277,9 @@ ...@@ -310,7 +277,9 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>action</string> </key> <key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
...@@ -326,7 +295,7 @@ ...@@ -326,7 +295,7 @@
</item> </item>
<item> <item>
<key> <string>external_processing_state</string> </key> <key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value> <value> <string>empty</string> </value>
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
...@@ -344,7 +313,7 @@ ...@@ -344,7 +313,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1468955459.16</float> <float>1485779306.52</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -108,11 +108,15 @@ ...@@ -108,11 +108,15 @@
<value> <string>OfficeJS Bookmark Preference</string> </value> <value> <string>OfficeJS Bookmark Preference</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -238,7 +242,7 @@ ...@@ -238,7 +242,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>955.26757.64302.42649</string> </value> <value> <string>956.64450.52709.9386</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -256,7 +260,7 @@ ...@@ -256,7 +260,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1483369683.96</float> <float>1485780641.43</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -108,11 +108,15 @@ ...@@ -108,11 +108,15 @@
<value> <string>OfficeJS Bookmark Preference JS</string> </value> <value> <string>OfficeJS Bookmark Preference JS</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -238,7 +242,7 @@ ...@@ -238,7 +242,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>955.61034.43590.15752</string> </value> <value> <string>956.64450.52709.9386</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -256,7 +260,7 @@ ...@@ -256,7 +260,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1483369693.2</float> <float>1485780623.37</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -144,9 +144,7 @@ ...@@ -144,9 +144,7 @@
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <value> <string>001</string> </value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
...@@ -259,7 +257,7 @@ ...@@ -259,7 +257,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>supercedriclen</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -273,7 +271,7 @@ ...@@ -273,7 +271,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>951.28165.23904.20428</string> </value> <value> <string>956.64450.52709.9386</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -291,7 +289,7 @@ ...@@ -291,7 +289,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1464188540.8</float> <float>1485956743.96</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -140,9 +140,7 @@ ...@@ -140,9 +140,7 @@
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <value> <string>001</string> </value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
...@@ -249,7 +247,7 @@ ...@@ -249,7 +247,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>supercedriclen</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -263,7 +261,7 @@ ...@@ -263,7 +261,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>951.28163.54980.41130</string> </value> <value> <string>956.64450.52709.9386</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -281,7 +279,7 @@ ...@@ -281,7 +279,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1464188897.32</float> <float>1485956738.35</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -54,23 +54,30 @@ ...@@ -54,23 +54,30 @@
<section class="ui-body-c ui-content-section"> <section class="ui-body-c ui-content-section">
<p>Select a storage to synchronize your data with</p> <p>Select a storage to synchronize your data with</p>
<!--div class="select-storage ui-controlgroup ui-controlgroup-horizontal"--> <!--div class="select-storage ui-controlgroup ui-controlgroup-horizontal"-->
<div class="ui-grid-b ui-responsive"> <div class="ui-grid-a ui-responsive">
<div class="ui-block-a"> <div class="ui-block-a">
<form class="select-dav-form" style="margin-right: .3125em; margin-left: .3125em;">
<button class="ui-btn ui-btn-b" type="submit" data-i18n="DAV Storage">DAV Storage</button>
</form>
</div>
<div class="ui-block-b">
<form class="select-erp5-form" style="margin-right: .3125em; margin-left: .3125em;"> <form class="select-erp5-form" style="margin-right: .3125em; margin-left: .3125em;">
<button class="ui-btn ui-btn-b" type="submit" data-i18n="ERP5">ERP5</button> <button class="ui-btn ui-btn-b" type="submit" data-i18n="ERP5">ERP5</button>
</form> </form>
</div> </div>
<div class="ui-block-c"> <div class="ui-block-b">
<form class="select-local-form" style="margin-right: .3125em; margin-left: .3125em;"> <form class="select-local-form" style="margin-right: .3125em; margin-left: .3125em;">
<button class="ui-btn ui-btn-b" type="submit" data-i18n="Local is Enough">Local is Enough</button> <button class="ui-btn ui-btn-b" type="submit" data-i18n="Local is Enough">Local is Enough</button>
</form> </form>
</div> </div>
</div> </div>
<div class="ui-grid-a ui-responsive">
<div class="ui-block-a">
<form class="select-dav-form" style="margin-right: .3125em; margin-left: .3125em;">
<button class="ui-btn ui-btn-b" type="submit" data-i18n="DAV Storage">DAV Storage</button>
</form>
</div>
<div class="ui-block-b">
<form class="select-dropbox-form" style="margin-right: .3125em; margin-left: .3125em;">
<button class="ui-btn ui-btn-b" type="submit" data-i18n="Dropbox">Dropbox</button>
</form>
</div>
</div>
<!--/div--> <!--/div-->
</section> </section>
</article> </article>
......
...@@ -105,6 +105,12 @@ ...@@ -105,6 +105,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS jIO Configurator Gadget</string> </value> <value> <string>OfficeJS jIO Configurator Gadget</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
...@@ -234,7 +240,7 @@ ...@@ -234,7 +240,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>954.38531.13446.10769</string> </value> <value> <string>956.64450.52709.9386</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -252,7 +258,7 @@ ...@@ -252,7 +258,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1476434371.85</float> <float>1485791321.61</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -35,6 +35,24 @@ ...@@ -35,6 +35,24 @@
return gadget.redirect({page: 'jio_dav_configurator'}); return gadget.redirect({page: 'jio_dav_configurator'});
} }
function get_redirect_uri() {
return window.location.origin;
}
function setDroboxConfiguration(gadget) {
return new RSVP.Queue()
.push(function () {
return gadget.getSetting('dropbox_app_key');
})
.push(function (app_key) {
window.location = 'https://www.dropbox.com/1/oauth2/authorize?client_id='
+ encodeURIComponent(app_key)
+ '&response_type=token&redirect_uri='
+ encodeURIComponent(get_redirect_uri());
});
}
var gadget_klass = rJS(window); var gadget_klass = rJS(window);
gadget_klass gadget_klass
...@@ -72,6 +90,9 @@ ...@@ -72,6 +90,9 @@
case "LOCAL": case "LOCAL":
gadget.props.element.querySelector("form.select-local-form button").classList.add("ui-btn-active"); gadget.props.element.querySelector("form.select-local-form button").classList.add("ui-btn-active");
break; break;
case "DROPBOX":
gadget.props.element.querySelector("form.select-dropbox-form button").classList.add("ui-btn-active");
break;
default: default:
gadget.props.element.querySelector(".message h3").appendChild(document.createTextNode("Welcome in OfficeJS " + setting_list[1] + ". Please start by choosing a storage.")); gadget.props.element.querySelector(".message h3").appendChild(document.createTextNode("Welcome in OfficeJS " + setting_list[1] + ". Please start by choosing a storage."));
gadget.props.element.querySelector(".message").setAttribute("style", ""); gadget.props.element.querySelector(".message").setAttribute("style", "");
...@@ -119,6 +140,14 @@ ...@@ -119,6 +140,14 @@
function () { function () {
return setDAVConfiguration(gadget); return setDAVConfiguration(gadget);
} }
),
loopEventListener(
gadget.props.element.querySelector('form.select-dropbox-form'),
'submit',
true,
function () {
return setDroboxConfiguration(gadget);
}
) )
]); ]);
}); });
......
...@@ -101,6 +101,12 @@ ...@@ -101,6 +101,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS jIO Configurator Gadget JS</string> </value> <value> <string>OfficeJS jIO Configurator Gadget JS</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
...@@ -230,7 +236,7 @@ ...@@ -230,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>956.25761.13498.989</string> </value> <value> <string>957.3286.34994.57207</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -248,7 +254,7 @@ ...@@ -248,7 +254,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1483450981.89</float> <float>1486030156.02</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
<!doctype html> <!doctype html>
<html> <html>
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<title>OfficeJS jIO DAV Configurator Page</title> <title>OfficeJS jIO DAV Configurator Page</title>
<script src="rsvp.js"></script> <script src="rsvp.js"></script>
<script src="renderjs.js"></script> <script src="renderjs.js"></script>
<script src="gadget_officejs_page_jio_dav_configurator.js"></script> <script src="gadget_officejs_page_jio_dav_configurator.js"></script>
</head> </head>
<body> <body>
<article class="ui-content ui-body-c"> <article class="ui-content ui-body-c">
<section class="ui-content-header-plain"> <section class="ui-content-header-plain">
<h3 class="ui-content-title ui-body-c"> <h3 class="ui-content-title ui-body-c">
<span class="ui-icon ui-icon-custom ui-icon-database">&nbsp;</span> <span class="ui-icon ui-icon-custom ui-icon-database">&nbsp;</span>
Your WebDAV Connection parameters Your WebDAV Connection parameters
</h3> </h3>
</section> </section>
<section class="ui-body-c ui-content-section"> <section class="ui-body-c ui-content-section">
<form class="dav-configuration-form"> <form class="dav-configuration-form">
<div class="ui-form"> <div class="ui-form">
<div class="ui-field-contain"> <div class="ui-field-contain">
<label data-i18n="Connection URL:">Connection URL:</label> <label data-i18n="Connection URL:">Connection URL:</label>
<input type="url" name="dav_url" required value=""/> <input type="url" name="dav_url" required value=""/>
</div> </div>
<div class="ui-field-contain"> <div class="ui-field-contain">
<label data-i18n="Username:">Username:</label> <label data-i18n="Username:">Username:</label>
<input type="text" name="dav_username" value=""/> <input type="text" name="dav_username" value=""/>
</div> </div>
<div class="ui-field-contain"> <div class="ui-field-contain">
<label data-i18n="Password:">Password:</label> <label data-i18n="Password:">Password:</label>
<input type="password" name="dav_password" value=""/> <input type="password" name="dav_password" value=""/>
</div> </div>
</div> </div>
<div class="select-storage ui-controlgroup ui-controlgroup-horizontal"> <div class="select-storage ui-controlgroup ui-controlgroup-horizontal">
<div class="ui-grid-b ui-responsive"> <div class="ui-grid-b ui-responsive">
<div class="ui-block-a"></div> <div class="ui-block-a"></div>
<div class="ui-block-b"></div> <div class="ui-block-b"></div>
<div class="ui-block-c"> <div class="ui-block-c">
<button type="submit" data-i18n="Connect" class="ui-btn-btn-right">Connect</button> <button type="submit" data-i18n="Connect" class="ui-btn-btn-right">Connect</button>
</div> </div>
</div> </div>
</div> </div>
</form> </form>
</section> </section>
</article> </article>
<article class="ui-content ui-body-c document-access"> <article class="ui-content ui-body-c document-access">
<section class="ui-content-header-plain"> <section class="ui-content-header-plain">
<h3 class="ui-content-title ui-body-c"> <h3 class="ui-content-title ui-body-c">
<span class="ui-icon ui-icon-custom ui-icon-file-text-o">&nbsp;</span> <span class="ui-icon ui-icon-custom ui-icon-file-text-o">&nbsp;</span>
Your Documents Your Documents
</h3> </h3>
</section> </section>
<section class="ui-body-c ui-content-section"> <section class="ui-body-c ui-content-section">
<p style="color: red">Continue by <b>synchronizing</b> with your remote storage or <b>accessing</b> your documents</p> <p style="color: red">Continue by <b>synchronizing</b> with your remote storage or <b>accessing</b> your documents</p>
<div class="ui-controlgroup ui-controlgroup-horizontal"> <div class="ui-controlgroup ui-controlgroup-horizontal">
<div class="ui-grid-a ui-responsive"> <div class="ui-grid-a ui-responsive">
<div class="ui-block-a"> <div class="ui-block-a">
<a class="ui-btn" href="#page=sync" data-i18n="Synchronize">Synchronize</a> <a class="ui-btn" href="#page=sync&auto_repair=true" data-i18n="Synchronize">Synchronize</a>
</div> </div>
<div class="ui-block-b"> <div class="ui-block-b">
<a class="ui-btn" href="#page=document_list" data-i18n="Go to document List">Access document List</a> <a class="ui-btn" href="#page=document_list" data-i18n="Go to document List">Access document List</a>
</div> </div>
</div> </div>
</div> </div>
</section> </section>
</article> </article>
</body> <div class="global_setting_gadget" style="display: none;"></div>
</html> </body>
</html>
\ No newline at end of file
...@@ -97,22 +97,20 @@ ...@@ -97,22 +97,20 @@
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
<value> <string>Web Page</string> </value> <value> <string>Web Page</string> </value>
</item> </item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS jIO DAV Configurator Page</string> </value> <value> <string>OfficeJS jIO DAV Configurator Page</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -171,7 +169,7 @@ ...@@ -171,7 +169,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -193,7 +191,7 @@ ...@@ -193,7 +191,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1442831613.46</float> <float>1485780580.2</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -238,7 +236,7 @@ ...@@ -238,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>946.59102.61985.50653</string> </value> <value> <string>956.64652.20228.58760</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -256,7 +254,7 @@ ...@@ -256,7 +254,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1446741062.96</float> <float>1485780575.5</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -279,11 +277,13 @@ ...@@ -279,11 +277,13 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>action</string> </key> <key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -295,7 +295,7 @@ ...@@ -295,7 +295,7 @@
</item> </item>
<item> <item>
<key> <string>external_processing_state</string> </key> <key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value> <value> <string>empty</string> </value>
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
...@@ -313,7 +313,7 @@ ...@@ -313,7 +313,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1442830550.27</float> <float>1485779297.53</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -105,7 +105,9 @@ ...@@ -105,7 +105,9 @@
</item> </item>
<item> <item>
<key> <string>url_string</string> </key> <key> <string>url_string</string> </key>
<value> <string>gadget_officejs_page_jio_dav_configurator.js</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
...@@ -236,7 +238,7 @@ ...@@ -236,7 +238,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>956.4046.59099.17288</string> </value> <value> <string>956.64903.6566.48281</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -254,7 +256,7 @@ ...@@ -254,7 +256,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1482142993.78</float> <float>1486042968.05</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>OfficeJS jIO Dropbox Configurator Page</title>
<script src="rsvp.js"></script>
<script src="renderjs.js"></script>
<script src="gadget_officejs_page_jio_dropbox_configurator.js"></script>
</head>
<body>
<article class="ui-content ui-body-c">
<section class="ui-content-header-plain">
<h3 class="ui-content-title ui-body-c">
<span class="ui-icon ui-icon-custom ui-icon-database">&nbsp;</span>
Your Dropbox Connection parameters
</h3>
</section>
<section class="ui-content-header-plain">
<p>Connecting to Dropbox</p>
</section>
</article>
<article class="ui-content ui-body-c document-access">
<section class="ui-content-header-plain">
<h3 class="ui-content-title ui-body-c">
<span class="ui-icon ui-icon-custom ui-icon-file-text-o">&nbsp;</span>
Your Documents
</h3>
</section>
<section class="ui-body-c ui-content-section">
<p style="color: red">Continue by <b>synchronizing</b> with your remote storage or <b>accessing</b> your documents</p>
<div class="ui-controlgroup ui-controlgroup-horizontal">
<div class="ui-grid-a ui-responsive">
<div class="ui-block-a">
<a class="ui-btn" href="#page=sync" data-i18n="Synchronize">Synchronize</a>
</div>
<div class="ui-block-b">
<a class="ui-btn" href="#page=document_list" data-i18n="Go to document List">Access document List</a>
</div>
</div>
</div>
</section>
</article>
<div class="global_setting_gadget" style="display: none;"></div>
</body>
</html>
\ No newline at end of file
<?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_dropbox_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_dropbox_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>title</string> </key>
<value> <string>OfficeJS jIO Dropbox Configurator Page</string> </value>
</item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</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>zope</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>1485780483.1</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>zope</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>956.64672.3552.2918</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>1485780527.48</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>zope</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>1485779368.87</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
/*global window, rJS, RSVP, URI, location,
loopEventListener, btoa */
/*jslint nomen: true, indent: 2, maxerr: 3*/
(function (window, rJS, RSVP) {
"use strict";
function setDropboxConfiguration(gadget) {
return gadget.getSetting("portal_type")
.push(function (portal_type) {
var old_date = new Date(),
configuration = {};
// We are looking for documents modified in the past 3 month
old_date = new Date(old_date.getFullYear(), old_date.getMonth() - 3);
configuration = {
type: "replicate",
// XXX This drop the signature lists...
query: {
query: 'portal_type:"' + portal_type + '" ',
// XX Synchonizing the whole module is too much, here is a way to start quietly
// Supsended until modification_date is handled for synchronization
limit: [0, 1234567890]
},
use_remote_post: false,
conflict_handling: 2,
check_local_modification: true,
check_local_creation: true,
check_local_deletion: false,
check_remote_modification: true,
check_remote_creation: true,
check_remote_deletion: true,
local_sub_storage: {
type: "mapping",
attachment: {
'data': {
get: {uri_template: 'enclosure'},
put: {uri_template: 'enclosure'}
}
},
sub_storage: {
type: "query",
sub_storage: {
type: "uuid",
sub_storage: {
type: "indexeddb",
database: "officejs-dropbox"
}
}
}
},
remote_sub_storage: {
type: "mapping",
attachment: {
'data': {
get: {uri_template: 'enclosure'},
put: {uri_template: 'enclosure'}
}
},
mapping_dict: {
"portal_type": ["equalSubProperty", "type"]
},
sub_storage: {
type: "query",
sub_storage: {
type: "drivetojiomapping",
sub_storage: {
type: "dropbox",
access_token: gadget.props.access_token,
root: "sandbox"
}
}
}
}
};
return gadget.setSetting('jio_storage_description', configuration);
})
.push(function () {
return gadget.setSetting('jio_storage_name', "DROPBOX");
})
.push(function () {
return gadget.setSetting('sync_reload', true);
})
.push(function () {
return gadget.redirect({page: 'sync', auto_repair: 'true'});
});
}
var gadget_klass = rJS(window);
gadget_klass
.ready(function (g) {
g.props = {};
return g.getElement()
.push(function (element) {
g.props.element = element;
g.props.deferred = RSVP.defer();
});
})
.declareAcquiredMethod("updateHeader", "updateHeader")
.declareAcquiredMethod("redirect", "redirect")
.declareAcquiredMethod("reload", "reload")
.declareAcquiredMethod("getSetting", "getSetting")
.declareAcquiredMethod("setSetting", "setSetting")
.declareMethod("getGlobalSetting", function (key) {
var gadget = this;
return gadget.getDeclaredGadget("global_setting_gadget")
.push(function (global_setting_gadget) {
return global_setting_gadget.getSetting(key);
});
})
.declareMethod("setGlobalSetting", function (key, value) {
var gadget = this;
return gadget.getDeclaredGadget("global_setting_gadget")
.push(function (global_setting_gadget) {
return global_setting_gadget.setSetting(key, value);
});
})
.declareMethod("render", function (options) {
var gadget = this;
return gadget.updateHeader({
title: "Connect To Drobox Storage",
back_url: "#page=jio_configurator",
panel_action: false
})
.push(function (options) {
return gadget.getSetting('jio_storage_name');
})
.push(function (jio_storage_name) {
if (!jio_storage_name) {
gadget.props.element.querySelector(".document-access").setAttribute("style", "display: none;");
}
})
.push(function () {
gadget.props.access_token = options.token;
return setDropboxConfiguration(gadget);
});
});
}(window, rJS, RSVP));
\ No newline at end of file
<?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>content_type</string> </key>
<value> <string>text/plain</string> </value>
</item>
<item>
<key> <string>default_reference</string> </key>
<value> <string>gadget_officejs_page_jio_dropbox_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_dropbox_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>title</string> </key>
<value> <string>OfficeJS jIO Dropbox Configurator Page JS</string> </value>
</item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</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>zope</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>1485780470.2</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>zope</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>956.64671.54901.45909</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>1485780514.28</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>zope</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>1485779366.79</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
<!doctype html> <!doctype html>
<html> <html>
<head> <head>
<meta charset="utf-8"> <base href="https://texteditor.app.officejs.com/1.0.4/gadget_officejs_page_jio_erp5_configurator.html/" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta charset="utf-8">
<title>OfficeJS jIO ERP5 Configurator Page</title> <meta name="viewport" content="width=device-width, initial-scale=1">
<script src="rsvp.js"></script> <title>OfficeJS jIO ERP5 Configurator Page</title>
<script src="renderjs.js"></script>
<script src="rsvp.js"></script>
<script src="gadget_officejs_page_jio_erp5_configurator.js"></script> <script src="renderjs.js"></script>
</head> <script src="gadget_officejs_page_jio_erp5_configurator.js"></script>
<body> </head>
<article class="ui-content ui-body-c">
<section class="ui-content-header-plain"> <body>
<h3 class="ui-content-title ui-body-c"> <article class="ui-content ui-body-c">
<span class="ui-icon ui-icon-custom ui-icon-database">&nbsp;</span> <section class="ui-content-header-plain">
Your ERP5 Connection parameters <h3 class="ui-content-title ui-body-c">
</h3> <span class="ui-icon ui-icon-custom ui-icon-database">&nbsp;</span>
</section> Your ERP5 Connection parameters
<section class="ui-content-header-plain"> </h3>
<p>You have to be logged in this ERP5 prior to synchronising</p> </section>
</section> <section class="ui-content-header-plain">
<section class="ui-body-c ui-content-section"> <p>You have to be logged in this ERP5 prior to synchronising</p>
<form class="erp5-configuration-form"> </section>
<section class="ui-body-c ui-content-section">
<div class="ui-form"> <form class="erp5-configuration-form">
<div class="ui-field-contain">
<label data-i18n="Connection URL:">Connection URL:</label> <div class="ui-form">
<input type="url" name="erp5_url" class="ui-focus" required disabled/> <div class="ui-field-contain">
</div> <label data-i18n="Connection URL:">Connection URL:</label>
<div class="select-storage ui-controlgroup ui-controlgroup-horizontal"> <input type="url" name="erp5_url" class="ui-focus" required disabled/>
<div class="ui-grid-b ui-responsive"> </div>
<div class="ui-block-a"></div> <div class="select-storage ui-controlgroup ui-controlgroup-horizontal">
<div class="ui-block-b"></div> <div class="ui-grid-b ui-responsive">
<div class="ui-block-c"> <div class="ui-block-a"></div>
<button type="submit" data-i18n="Connect" class="ui-btn-btn-right">Connect</button> <div class="ui-block-b"></div>
</div> <div class="ui-block-c">
</div> <button type="submit" data-i18n="Connect" class="ui-btn-btn-right">Connect</button>
</div> </div>
</form> </div>
</section> </div>
</article> </form>
<article class="ui-content ui-body-c document-access"> </section>
<section class="ui-content-header-plain"> </article>
<h3 class="ui-content-title ui-body-c"> <article class="ui-content ui-body-c document-access">
<span class="ui-icon ui-icon-custom ui-icon-file-text-o">&nbsp;</span> <section class="ui-content-header-plain">
Your Documents <h3 class="ui-content-title ui-body-c">
</h3> <span class="ui-icon ui-icon-custom ui-icon-file-text-o">&nbsp;</span>
</section> Your Documents
<section class="ui-body-c ui-content-section"> </h3>
<p style="color: red">Continue by <b>synchronizing</b> with your remote storage or <b>accessing</b> your documents</p> </section>
<div class="ui-controlgroup ui-controlgroup-horizontal"> <section class="ui-body-c ui-content-section">
<div class="ui-grid-a ui-responsive"> <p style="color: red">Continue by <b>synchronizing</b> with your remote storage or <b>accessing</b> your documents</p>
<div class="ui-block-a"> <div class="ui-controlgroup ui-controlgroup-horizontal">
<a class="ui-btn" href="#page=sync&auto_repair=true" data-i18n="Synchronize">Synchronize</a> <div class="ui-grid-a ui-responsive">
</div> <div class="ui-block-a">
<div class="ui-block-b"> <a class="ui-btn" href="#page=sync&auto_repair=true" data-i18n="Synchronize">Synchronize</a>
<a class="ui-btn" href="#page=document_list" data-i18n="Go to document List">Access document List</a> </div>
</div> <div class="ui-block-b">
</div> <a class="ui-btn" href="#page=document_list" data-i18n="Go to document List">Access document List</a>
</div> </div>
</section> </div>
</article> </div>
</section>
<div class="global_setting_gadget" style="display: none;"></div> </article>
</body>
</html> <div class="global_setting_gadget" style="display: none;"></div>
</body>
</html>
\ No newline at end of file
...@@ -63,14 +63,6 @@ ...@@ -63,14 +63,6 @@
</tuple> </tuple>
</value> </value>
</item> </item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>contributor/person_module/1</string>
</tuple>
</value>
</item>
<item> <item>
<key> <string>content_md5</string> </key> <key> <string>content_md5</string> </key>
<value> <value>
...@@ -81,14 +73,6 @@ ...@@ -81,14 +73,6 @@
<key> <string>content_type</string> </key> <key> <string>content_type</string> </key>
<value> <string>text/html</string> </value> <value> <string>text/html</string> </value>
</item> </item>
<item>
<key> <string>creators</string> </key>
<value>
<tuple>
<string>cedric.le.ninivin</string>
</tuple>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>gadget_officejs_page_jio_erp5_configurator.html</string> </value> <value> <string>gadget_officejs_page_jio_erp5_configurator.html</string> </value>
...@@ -109,45 +93,24 @@ ...@@ -109,45 +93,24 @@
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>modification_date</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1455284351.6</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
<item> <item>
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
<value> <string>Web Page</string> </value> <value> <string>Web Page</string> </value>
</item> </item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS jIO ERP5 Configurator Page</string> </value> <value> <string>OfficeJS jIO ERP5 Configurator Page</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -206,7 +169,7 @@ ...@@ -206,7 +169,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>supercedriclen</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -228,7 +191,7 @@ ...@@ -228,7 +191,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1466088843.02</float> <float>1485780407.13</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -273,7 +236,7 @@ ...@@ -273,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>954.38565.29657.34116</string> </value> <value> <string>956.64653.28215.17971</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -291,7 +254,7 @@ ...@@ -291,7 +254,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1476436854.76</float> <float>1485780401.63</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -314,11 +277,13 @@ ...@@ -314,11 +277,13 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>action</string> </key> <key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>supercedriclen</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -330,7 +295,7 @@ ...@@ -330,7 +295,7 @@
</item> </item>
<item> <item>
<key> <string>external_processing_state</string> </key> <key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value> <value> <string>empty</string> </value>
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
...@@ -348,7 +313,7 @@ ...@@ -348,7 +313,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1466085053.26</float> <float>1485779365.09</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -140,7 +140,9 @@ ...@@ -140,7 +140,9 @@
</item> </item>
<item> <item>
<key> <string>url_string</string> </key> <key> <string>url_string</string> </key>
<value> <string>gadget_officejs_page_jio_erp5_configurator.js</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
......
<!doctype html> <!doctype html>
<html> <html>
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<title>OfficeJS Login Page </title> <title>OfficeJS Login Page </title>
<script src="rsvp.js"></script> <script src="rsvp.js"></script>
<script src="renderjs.js"></script> <script src="renderjs.js"></script>
<script src="gadget_global.js" ></script> <script src="gadget_global.js" ></script>
<script src="gadget_officejs_page_login.js"></script> <script src="gadget_officejs_page_login.js"></script>
</head> </head>
<body> <body>
<article class="ui-content ui-body-c"> <article class="ui-content ui-body-c">
<section class="ui-content-header-plain"> <section class="ui-content-header-plain">
<h3 class="ui-content-title ui-body-c"> <h3 class="ui-content-title ui-body-c">
<span class="ui-icon ui-icon-custom ui-icon-user">&nbsp;</span> <span class="ui-icon ui-icon-custom ui-icon-user">&nbsp;</span>
Login Login
</h3> </h3>
</section> </section>
<section class="ui-body-c ui-content-section"> <section class="ui-body-c ui-content-section">
<form class="login-form"> <form class="login-form">
<div class="ui-field-contain"> <div class="ui-field-contain">
<label data-i18n="Login">Login</label> <label data-i18n="Login">Login</label>
<input type="text" name="jid" placeholder="Ex: john" value="" required> <input type="text" name="jid" placeholder="Ex: john" value="" required>
</div> </div>
<div class="ui-field-contain"> <div class="ui-field-contain">
<label data-i18n="Password">Password</label> <label data-i18n="Password">Password</label>
<input type="password" name="passwd" placeholder="Ex: A1bcF$99" value="" required> <input type="password" name="passwd" placeholder="Ex: A1bcF$99" value="" required>
</div> </div>
<div class="ui-grid-b ui-responsive"> <div class="ui-grid-b ui-responsive">
<div class="ui-block-a"> <div class="ui-block-a">
</div> </div>
<div class="ui-block-b"> <div class="ui-block-b">
</div> </div>
<div class="ui-block-c"> <div class="ui-block-c">
<button class="ui-btn ui-btn-b" type="submit" data-i18n="Log In">Log In</button> <button class="ui-btn ui-btn-b" type="submit" data-i18n="Log In">Log In</button>
</div> </div>
</div> </div>
</form> </form>
</section> </section>
</article> </article>
</body> </body>
</html> </html>
\ No newline at end of file
...@@ -97,22 +97,20 @@ ...@@ -97,22 +97,20 @@
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
<value> <string>Web Page</string> </value> <value> <string>Web Page</string> </value>
</item> </item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Login Page</string> </value> <value> <string>OfficeJS Login Page</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -171,7 +169,7 @@ ...@@ -171,7 +169,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -193,7 +191,7 @@ ...@@ -193,7 +191,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1438011335.54</float> <float>1485780377.99</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -224,7 +222,7 @@ ...@@ -224,7 +222,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -238,7 +236,7 @@ ...@@ -238,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>945.62650.43414.46660</string> </value> <value> <string>956.64652.16930.8601</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -256,7 +254,7 @@ ...@@ -256,7 +254,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1443096971.41</float> <float>1485780371.75</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -279,11 +277,13 @@ ...@@ -279,11 +277,13 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>action</string> </key> <key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -295,7 +295,7 @@ ...@@ -295,7 +295,7 @@
</item> </item>
<item> <item>
<key> <string>external_processing_state</string> </key> <key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value> <value> <string>empty</string> </value>
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
...@@ -313,7 +313,7 @@ ...@@ -313,7 +313,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1438011232.72</float> <float>1485779294.46</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
/*globals window, document, RSVP, rJS, promiseEventListener*/ /*globals window, document, RSVP, rJS, promiseEventListener*/
/*jslint indent: 2, maxlen: 80, nomen: true*/ /*jslint indent: 2, maxlen: 80, nomen: true*/
(function (window, document, RSVP, rJS, promiseEventListener) { (function (window, document, RSVP, rJS, promiseEventListener) {
"use strict"; "use strict";
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
// templates // templates
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
rJS(window) rJS(window)
.ready(function (g) { .ready(function (g) {
g.props = {}; g.props = {};
return g.getElement() return g.getElement()
.push(function (element) { .push(function (element) {
g.props.element = element; g.props.element = element;
}); });
}) })
.declareAcquiredMethod("updateHeader", "updateHeader") .declareAcquiredMethod("updateHeader", "updateHeader")
.declareAcquiredMethod("translateHtml", "translateHtml") .declareAcquiredMethod("translateHtml", "translateHtml")
.declareMethod("render", function () { .declareMethod("render", function () {
var gadget = this; var gadget = this;
return gadget.updateHeader({ return gadget.updateHeader({
title: "Connect" title: "Connect"
}); });
}) })
.declareAcquiredMethod("redirect", "redirect") .declareAcquiredMethod("redirect", "redirect")
.declareService(function () { .declareService(function () {
var gadget = this; var gadget = this;
return new RSVP.Queue() return new RSVP.Queue()
.push(function () { .push(function () {
gadget.props.element.querySelector("input[type=text]") gadget.props.element.querySelector("input[type=text]")
.focus(); .focus();
return promiseEventListener( return promiseEventListener(
gadget.props.element.querySelector('form.login-form'), gadget.props.element.querySelector('form.login-form'),
'submit', 'submit',
false false
); );
}) })
.push(function (evt) { .push(function (evt) {
gadget.props.element.querySelector("button") gadget.props.element.querySelector("button")
.disabled = true; .disabled = true;
var login = evt.target.elements[0].value, var login = evt.target.elements[0].value,
passwd = evt.target.elements[1].value; passwd = evt.target.elements[1].value;
document.cookie = "__ac=" + window.btoa(login + ":" + passwd) + document.cookie = "__ac=" + window.btoa(login + ":" + passwd) +
"; path=/"; "; path=/";
return gadget.redirect({page:"sync"}); return gadget.redirect({page:"sync"});
}); });
}); });
}(window, document, RSVP, rJS, promiseEventListener)); }(window, document, RSVP, rJS, promiseEventListener));
\ No newline at end of file
...@@ -69,6 +69,10 @@ ...@@ -69,6 +69,10 @@
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>content_type</string> </key>
<value> <string>text/javascript</string> </value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>gadget_officejs_page_login.js</string> </value> <value> <string>gadget_officejs_page_login.js</string> </value>
...@@ -93,22 +97,20 @@ ...@@ -93,22 +97,20 @@
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
<value> <string>Web Script</string> </value> <value> <string>Web Script</string> </value>
</item> </item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Login Page JS</string> </value> <value> <string>OfficeJS Login Page JS</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -167,7 +169,7 @@ ...@@ -167,7 +169,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -189,7 +191,7 @@ ...@@ -189,7 +191,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1438011356.37</float> <float>1485780342.24</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -220,7 +222,7 @@ ...@@ -220,7 +222,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -234,7 +236,7 @@ ...@@ -234,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>945.62644.11371.29525</string> </value> <value> <string>956.64652.14224.43383</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -252,7 +254,7 @@ ...@@ -252,7 +254,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1443096382.27</float> <float>1485780123.89</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -275,11 +277,13 @@ ...@@ -275,11 +277,13 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>action</string> </key> <key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -291,7 +295,7 @@ ...@@ -291,7 +295,7 @@
</item> </item>
<item> <item>
<key> <string>external_processing_state</string> </key> <key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value> <value> <string>empty</string> </value>
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
...@@ -309,7 +313,7 @@ ...@@ -309,7 +313,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1438011231.09</float> <float>1485779291.98</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
<!doctype html> <!doctype html>
<html> <html>
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<title>OfficeJS Logout Page</title> <title>OfficeJS Logout Page</title>
<script src="rsvp.js"></script> <script src="rsvp.js"></script>
<script src="renderjs.js"></script> <script src="renderjs.js"></script>
<script src="handlebars.js"></script> <script src="handlebars.js"></script>
<script src="gadget_global.js" ></script> <script src="gadget_global.js" ></script>
<script id="page-template" type="text/x-handlebars-template"> <script id="page-template" type="text/x-handlebars-template">
<div class="ui-grid-b ui-responsive"> <div class="ui-grid-b ui-responsive">
<div class="ui-block-a"></div> <div class="ui-block-a"></div>
<div class="ui-block-b"> <div class="ui-block-b">
<form class="logout-form"> <form class="logout-form">
<input data-inline="true" type="submit" data-i18n="[value]Confirm" value="Confirm" data-theme="b"> <input data-inline="true" type="submit" data-i18n="[value]Confirm" value="Confirm" data-theme="b">
</form> </form>
</div> </div>
<div class="ui-block-c"></div> <div class="ui-block-c"></div>
</div> </div>
</script> </script>
<script src="gadget_officejs_page_logout.js"></script> <script src="gadget_officejs_page_logout.js"></script>
</head> </head>
<body> <body>
</body> </body>
</html> </html>
\ No newline at end of file
...@@ -97,22 +97,20 @@ ...@@ -97,22 +97,20 @@
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
<value> <string>Web Page</string> </value> <value> <string>Web Page</string> </value>
</item> </item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Logout Page</string> </value> <value> <string>OfficeJS Logout Page</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -171,7 +169,7 @@ ...@@ -171,7 +169,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -193,7 +191,7 @@ ...@@ -193,7 +191,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1438011477.47</float> <float>1485780056.47</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -224,7 +222,7 @@ ...@@ -224,7 +222,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -238,7 +236,7 @@ ...@@ -238,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>945.18325.52875.45858</string> </value> <value> <string>956.64652.10976.32921</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -256,7 +254,7 @@ ...@@ -256,7 +254,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1440439770.0</float> <float>1485780049.93</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -279,11 +277,13 @@ ...@@ -279,11 +277,13 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>action</string> </key> <key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -295,7 +295,7 @@ ...@@ -295,7 +295,7 @@
</item> </item>
<item> <item>
<key> <string>external_processing_state</string> </key> <key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value> <value> <string>empty</string> </value>
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
...@@ -313,7 +313,7 @@ ...@@ -313,7 +313,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1438011364.67</float> <float>1485779288.82</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
/*globals window, RSVP, rJS, promiseEventListener, document, Handlebars*/ /*globals window, RSVP, rJS, promiseEventListener, document, Handlebars*/
/*jslint indent: 2, maxlen: 80, nomen: true*/ /*jslint indent: 2, maxlen: 80, nomen: true*/
(function (window, RSVP, rJS, promiseEventListener, document, Handlebars) { (function (window, RSVP, rJS, promiseEventListener, document, Handlebars) {
"use strict"; "use strict";
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
// templates // templates
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
var gadget_klass = rJS(window), var gadget_klass = rJS(window),
templater = gadget_klass.__template_element, templater = gadget_klass.__template_element,
template = Handlebars.compile( template = Handlebars.compile(
templater.getElementById("page-template").innerHTML templater.getElementById("page-template").innerHTML
); );
gadget_klass gadget_klass
.ready(function (g) { .ready(function (g) {
g.props = {}; g.props = {};
return g.getElement() return g.getElement()
.push(function (element) { .push(function (element) {
g.props.element = element; g.props.element = element;
}); });
}) })
.declareAcquiredMethod("updateHeader", "updateHeader") .declareAcquiredMethod("updateHeader", "updateHeader")
.declareAcquiredMethod("translateHtml", "translateHtml") .declareAcquiredMethod("translateHtml", "translateHtml")
.declareMethod("render", function () { .declareMethod("render", function () {
var gadget = this; var gadget = this;
return gadget.updateHeader({ return gadget.updateHeader({
title: "Logout" title: "Logout"
}) })
.push(function () { .push(function () {
return gadget.translateHtml(template()); return gadget.translateHtml(template());
}) })
.push(function (html) { .push(function (html) {
gadget.props.element.innerHTML = html; gadget.props.element.innerHTML = html;
}); });
}) })
.declareAcquiredMethod("redirect", "redirect") .declareAcquiredMethod("redirect", "redirect")
.declareService(function () { .declareService(function () {
var gadget = this; var gadget = this;
return new RSVP.Queue() return new RSVP.Queue()
.push(function () { .push(function () {
return promiseEventListener( return promiseEventListener(
gadget.props.element.querySelector('form.logout-form'), gadget.props.element.querySelector('form.logout-form'),
'submit', 'submit',
false false
); );
}) })
.push(function () { .push(function () {
gadget.props.element.querySelector("input[type=submit]") gadget.props.element.querySelector("input[type=submit]")
.disabled = true; .disabled = true;
document.cookie = "__ac=; path=/"; document.cookie = "__ac=; path=/";
return gadget.redirect({}); return gadget.redirect({});
}); });
}); });
}(window, RSVP, rJS, promiseEventListener, document, Handlebars)); }(window, RSVP, rJS, promiseEventListener, document, Handlebars));
\ No newline at end of file
...@@ -69,6 +69,10 @@ ...@@ -69,6 +69,10 @@
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>content_type</string> </key>
<value> <string>text/javascript</string> </value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>gadget_officejs_page_logout.js</string> </value> <value> <string>gadget_officejs_page_logout.js</string> </value>
...@@ -93,22 +97,20 @@ ...@@ -93,22 +97,20 @@
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
<value> <string>Web Script</string> </value> <value> <string>Web Script</string> </value>
</item> </item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Logout Page JS</string> </value> <value> <string>OfficeJS Logout Page JS</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -167,7 +169,7 @@ ...@@ -167,7 +169,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -189,7 +191,7 @@ ...@@ -189,7 +191,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1438011427.35</float> <float>1485780028.72</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -220,7 +222,7 @@ ...@@ -220,7 +222,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -234,7 +236,7 @@ ...@@ -234,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>944.43433.8046.27699</string> </value> <value> <string>956.64652.7554.6263</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -252,7 +254,7 @@ ...@@ -252,7 +254,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1440437142.4</float> <float>1485780024.23</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -275,11 +277,13 @@ ...@@ -275,11 +277,13 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>action</string> </key> <key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -291,7 +295,7 @@ ...@@ -291,7 +295,7 @@
</item> </item>
<item> <item>
<key> <string>external_processing_state</string> </key> <key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value> <value> <string>empty</string> </value>
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
...@@ -309,7 +313,7 @@ ...@@ -309,7 +313,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1438011362.53</float> <float>1485779286.12</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -121,6 +121,12 @@ ...@@ -121,6 +121,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Share jIO Page</string> </value> <value> <string>OfficeJS Share jIO Page</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -113,6 +113,12 @@ ...@@ -113,6 +113,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Share jIO Page JS</string> </value> <value> <string>OfficeJS Share jIO Page JS</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
<!doctype html> <!doctype html>
<html> <html>
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<title>OfficeJS Sync Page</title> <title>OfficeJS Sync Page</title>
<script src="rsvp.js"></script> <script src="rsvp.js"></script>
<script src="renderjs.js"></script> <script src="renderjs.js"></script>
<script src="handlebars.js"></script> <script src="handlebars.js"></script>
<script src="gadget_global.js" ></script> <script src="gadget_global.js" ></script>
<script id="page-template" type="text/x-handlebars-template"> <script id="page-template" type="text/x-handlebars-template">
<article class="ui-content ui-body-c"> <article class="ui-content ui-body-c">
<section class="ui-content-header-plain"> <section class="ui-content-header-plain">
<h3 class="ui-content-title ui-body-c"> <h3 class="ui-content-title ui-body-c">
<span class="ui-icon ui-icon-custom ui-icon-refresh">&nbsp;</span> <span class="ui-icon ui-icon-custom ui-icon-refresh">&nbsp;</span>
Synchronize your data Synchronize your data
</h3> </h3>
</section> </section>
<section class="ui-body-c ui-content-section"> <section class="ui-body-c ui-content-section">
<div class="ui-controlgroup ui-controlgroup-horizontal"> <div class="ui-controlgroup ui-controlgroup-horizontal">
<div class="ui-grid-b ui-responsive"> <div class="ui-grid-b ui-responsive">
<div class="ui-block-a"></div> <div class="ui-block-a"></div>
<div class="ui-block-b"> <div class="ui-block-b">
<form class="synchro-form view-web-page-form"> <form class="synchro-form view-web-page-form">
<button type="submit" data-i18n="Launch Synchronization" data-theme="b">Launch Synchronization</button> <button type="submit" data-i18n="Launch Synchronization" data-theme="b">Launch Synchronization</button>
</form> </form>
</div> </div>
<div class="ui-block-c"></div> <div class="ui-block-c"></div>
</div> </div>
</div> </div>
</section> </section>
</article> </article>
</script> </script>
<script src="gadget_officejs_page_sync.js"></script> <script src="gadget_officejs_page_sync.js"></script>
</head> </head>
<body> <body>
</body> </body>
</html> </html>
\ No newline at end of file
...@@ -97,22 +97,20 @@ ...@@ -97,22 +97,20 @@
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
<value> <string>Web Page</string> </value> <value> <string>Web Page</string> </value>
</item> </item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Sync Page</string> </value> <value> <string>OfficeJS Sync Page</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -144,6 +142,12 @@ ...@@ -144,6 +142,12 @@
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
<item>
<key> <string>processing_status_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent>
</value>
</item>
</dictionary> </dictionary>
</value> </value>
</item> </item>
...@@ -165,7 +169,7 @@ ...@@ -165,7 +169,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -187,7 +191,7 @@ ...@@ -187,7 +191,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1442854019.1</float> <float>1485779928.61</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -218,7 +222,7 @@ ...@@ -218,7 +222,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -232,7 +236,7 @@ ...@@ -232,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>945.58606.64610.54852</string> </value> <value> <string>956.64652.3093.26982</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -250,7 +254,66 @@ ...@@ -250,7 +254,66 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1443012064.85</float> <float>1485779922.53</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>zope</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>1485779281.24</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -105,7 +105,9 @@ ...@@ -105,7 +105,9 @@
</item> </item>
<item> <item>
<key> <string>url_string</string> </key> <key> <string>url_string</string> </key>
<value> <string>gadget_officejs_page_sync.js</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
......
...@@ -105,6 +105,12 @@ ...@@ -105,6 +105,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS router Gadget</string> </value> <value> <string>OfficeJS router Gadget</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -101,6 +101,12 @@ ...@@ -101,6 +101,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS router Gadget JS</string> </value> <value> <string>OfficeJS router Gadget JS</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -126,6 +126,12 @@ NETWORK:\n ...@@ -126,6 +126,12 @@ NETWORK:\n
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Setting Gadget AppCache</string> </value> <value> <string>OfficeJS Setting Gadget AppCache</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -140,6 +140,12 @@ ...@@ -140,6 +140,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Setting Gadget</string> </value> <value> <string>OfficeJS Setting Gadget</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -136,6 +136,12 @@ ...@@ -136,6 +136,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Setting Gadget JS</string> </value> <value> <string>OfficeJS Setting Gadget JS</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -103,6 +103,12 @@ ...@@ -103,6 +103,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>Spreadsheet Application Panel Gadget</string> </value> <value> <string>Spreadsheet Application Panel Gadget</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -105,6 +105,12 @@ ...@@ -105,6 +105,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS router Gadget</string> </value> <value> <string>OfficeJS router Gadget</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -101,6 +101,12 @@ ...@@ -101,6 +101,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS spreadsheet router Gadget JS</string> </value> <value> <string>OfficeJS spreadsheet router Gadget JS</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -142,7 +142,9 @@ ...@@ -142,7 +142,9 @@
</item> </item>
<item> <item>
<key> <string>url_string</string> </key> <key> <string>url_string</string> </key>
<value> <string>gadget_officejs_svg_editor_router.html</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
......
...@@ -146,7 +146,9 @@ ...@@ -146,7 +146,9 @@
</item> </item>
<item> <item>
<key> <string>url_string</string> </key> <key> <string>url_string</string> </key>
<value> <string>gadget_officejs_text_editor_router.html</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
......
...@@ -103,6 +103,12 @@ ...@@ -103,6 +103,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS WebRTC Jio Gadget</string> </value> <value> <string>OfficeJS WebRTC Jio Gadget</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
...@@ -101,6 +101,12 @@ ...@@ -101,6 +101,12 @@
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS WebRTC Jio Gadget JS</string> </value> <value> <string>OfficeJS WebRTC Jio Gadget JS</string> </value>
</item> </item>
<item>
<key> <string>url_string</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>version</string> </key> <key> <string>version</string> </key>
<value> <string>001</string> </value> <value> <string>001</string> </value>
......
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<meta charset="utf-8" /> <meta charset="utf-8" />
<meta name="viewport" content="width=device-width, user-scalable=no" /> <meta name="viewport" content="width=device-width, user-scalable=no" />
<title>OfficeJS Widget Listbox</title> <title>OfficeJS Widget Listbox</title>
<!-- renderjs --> <!-- renderjs -->
<script src="rsvp.js" type="text/javascript"></script> <script src="rsvp.js" type="text/javascript"></script>
<script src="renderjs.js" type="text/javascript"></script> <script src="renderjs.js" type="text/javascript"></script>
<script src="handlebars.js"></script> <script src="handlebars.js"></script>
<script id="listbox-widget-table" type="text/x-handlebars-template"> <script id="listbox-widget-table" type="text/x-handlebars-template">
<form><div class="center"> <form><div class="center">
<div class="ui-field-contain"> <div class="ui-field-contain">
<div class="ui-input-text ui-body-{{widget_theme}} ui-corner-all ui-shadow-inset ui-input-has-clear {{widget_status_class}}"> <div class="ui-input-text ui-body-{{widget_theme}} ui-corner-all ui-shadow-inset ui-input-has-clear {{widget_status_class}}">
<input type="text" data-enhanced="true" value="{{search}}" name="search" {{widget_status_attribute}} /> <input type="text" data-enhanced="true" value="{{search}}" name="search" {{widget_status_attribute}} />
<div class="ui-btn ui-input-clear ui-input-btn ui-corner-all ui-icon-search ui-btn-icon-notext" data-i18n="[node]header-submit"> <div class="ui-btn ui-input-clear ui-input-btn ui-corner-all ui-icon-search ui-btn-icon-notext" data-i18n="[node]header-submit">
Submit<input data-enhanced="true" type="submit" data-i18n="[value]header-submit" value="Submit" {{widget_status_attribute}} /> Submit<input data-enhanced="true" type="submit" data-i18n="[value]header-submit" value="Submit" {{widget_status_attribute}} />
</div> </div>
</div> </div>
</div> </div>
</div></form> </div></form>
<table class="ui-responsive ui-body-c ui-table-inset custom-force-list"> <table class="ui-responsive ui-body-c ui-table-inset custom-force-list">
<thead class="ui-bar-inherit"> <thead class="ui-bar-inherit">
<tr> <tr>
{{#each column_list}} {{#each column_list}}
<th>{{this}}</th> <th>{{this}}</th>
{{/each}} {{/each}}
</tr> </tr>
</thead> </thead>
{{> listbox-widget-table-partial}} {{> listbox-widget-table-partial}}
<tfoot class="ui-bar-inherit"></tfoot> <tfoot class="ui-bar-inherit"></tfoot>
</table> </table>
</script> </script>
<script id="listbox-widget-table-partial" type="text/x-handlebars-template"> <script id="listbox-widget-table-partial" type="text/x-handlebars-template">
<tbody> <tbody>
{{#each row_list}} {{#each row_list}}
<tr> <tr>
{{#each cell_list}} {{#each cell_list}}
<td><a class="ui-link" href="{{href}}">{{value}}</a></td> <td><a class="ui-link" href="{{href}}">{{value}}</a></td>
{{/each}} {{/each}}
</tr> </tr>
{{/each}} {{/each}}
</tbody> </tbody>
</script> </script>
<!-- custom script --> <!-- custom script -->
<script src="gadget_officejs_widget_listbox.js" type="text/javascript"></script> <script src="gadget_officejs_widget_listbox.js" type="text/javascript"></script>
</head> </head>
<body> <body>
<div class="custom-grid-wrap"> <div class="custom-grid-wrap">
<div class="custom-grid ui-corner-all ui-body-inherit ui-shadow ui-corner-all"> <div class="custom-grid ui-corner-all ui-body-inherit ui-shadow ui-corner-all">
<div class="ui-body-c ui-corner-all"></div> <div class="ui-body-c ui-corner-all"></div>
</div> </div>
</div> </div>
</body> </body>
</html> </html>
\ No newline at end of file
...@@ -97,22 +97,20 @@ ...@@ -97,22 +97,20 @@
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
<value> <string>Web Page</string> </value> <value> <string>Web Page</string> </value>
</item> </item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Widget Listbox</string> </value> <value> <string>OfficeJS Widget Listbox</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -171,7 +169,7 @@ ...@@ -171,7 +169,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -193,7 +191,7 @@ ...@@ -193,7 +191,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1438012253.92</float> <float>1485779878.36</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -224,7 +222,7 @@ ...@@ -224,7 +222,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -238,7 +236,7 @@ ...@@ -238,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>945.18321.41236.45056</string> </value> <value> <string>956.64651.62129.51660</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -256,7 +254,7 @@ ...@@ -256,7 +254,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1440439658.47</float> <float>1485779826.21</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -279,11 +277,13 @@ ...@@ -279,11 +277,13 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>action</string> </key> <key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -295,7 +295,7 @@ ...@@ -295,7 +295,7 @@
</item> </item>
<item> <item>
<key> <string>external_processing_state</string> </key> <key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value> <value> <string>empty</string> </value>
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
...@@ -313,7 +313,7 @@ ...@@ -313,7 +313,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1438012182.81</float> <float>1485779276.02</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
/*global window, rJS, RSVP, Handlebars, loopEventListener */ /*global window, rJS, RSVP, Handlebars, loopEventListener */
/*jslint nomen: true, indent: 2 */ /*jslint nomen: true, indent: 2 */
(function (window, rJS, RSVP, Handlebars, loopEventListener) { (function (window, rJS, RSVP, Handlebars, loopEventListener) {
"use strict"; "use strict";
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
// templates // templates
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
var gadget_klass = rJS(window), var gadget_klass = rJS(window),
templater = gadget_klass.__template_element, templater = gadget_klass.__template_element,
listbox_widget_table = Handlebars.compile( listbox_widget_table = Handlebars.compile(
templater.getElementById("listbox-widget-table").innerHTML templater.getElementById("listbox-widget-table").innerHTML
); );
Handlebars.registerPartial( Handlebars.registerPartial(
"listbox-widget-table-partial", "listbox-widget-table-partial",
templater.getElementById("listbox-widget-table-partial").innerHTML templater.getElementById("listbox-widget-table-partial").innerHTML
); );
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
// some methods // some methods
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
gadget_klass gadget_klass
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
// ready // ready
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
.ready(function (gadget) { .ready(function (gadget) {
gadget.property_dict = { gadget.property_dict = {
render_deferred: RSVP.defer() render_deferred: RSVP.defer()
}; };
}) })
.ready(function (gadget) { .ready(function (gadget) {
return gadget.getElement() return gadget.getElement()
.push(function (element) { .push(function (element) {
gadget.property_dict.element = element; gadget.property_dict.element = element;
}); });
}) })
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
// published methods // published methods
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
// acquired methods // acquired methods
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
.declareAcquiredMethod("jio_allDocs", "jio_allDocs") .declareAcquiredMethod("jio_allDocs", "jio_allDocs")
.declareAcquiredMethod("getUrlFor", "getUrlFor") .declareAcquiredMethod("getUrlFor", "getUrlFor")
.declareAcquiredMethod("translate", "translate") .declareAcquiredMethod("translate", "translate")
.declareAcquiredMethod("redirect", "redirect") .declareAcquiredMethod("redirect", "redirect")
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
// declared methods // declared methods
///////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////
.declareMethod('render', function (option_dict) { .declareMethod('render', function (option_dict) {
var gadget = this, var gadget = this,
content = '', content = '',
k, k,
k_len, k_len,
search_list = [], search_list = [],
translated_column_list = [], translated_column_list = [],
all_docs_result; all_docs_result;
// store initial configuration // store initial configuration
gadget.property_dict.option_dict = option_dict; gadget.property_dict.option_dict = option_dict;
// Create the search query // Create the search query
if (option_dict.search) { if (option_dict.search) {
for (k = 0, k_len = option_dict.column_list.length; k < k_len; k += 1) { for (k = 0, k_len = option_dict.column_list.length; k < k_len; k += 1) {
search_list.push(option_dict.column_list[k].select + ':"%' + option_dict.search + '%"'); search_list.push(option_dict.column_list[k].select + ':"%' + option_dict.search + '%"');
} }
option_dict.query.query = '(' + search_list.join(' OR ') + ') AND ' + option_dict.query.query; option_dict.query.query = '(' + search_list.join(' OR ') + ') AND ' + option_dict.query.query;
} }
return gadget.jio_allDocs(option_dict.query) return gadget.jio_allDocs(option_dict.query)
.push(function (result) { .push(function (result) {
var promise_list = [], var promise_list = [],
i_len, i_len,
i; i;
all_docs_result = result; all_docs_result = result;
for (i = 0, i_len = result.data.total_rows; i < i_len; i += 1) { for (i = 0, i_len = result.data.total_rows; i < i_len; i += 1) {
if (option_dict.came_from_jio_key) { promise_list.push(gadget.getUrlFor({jio_key: result.data.rows[i].id, page: 'view'}));
promise_list.push(gadget.getUrlFor({jio_key: option_dict.came_from_jio_key, page: 'view', came_from_jio_key: result.data.rows[i].id})); }
} else {
promise_list.push(gadget.getUrlFor({jio_key: result.data.rows[i].id, page: 'view'})); return RSVP.all(promise_list);
} })
} .push(function (link_list) {
var row_list = [],
return RSVP.all(promise_list); cell_list,
}) i_len,
.push(function (link_list) { i,
var row_list = [], j_len,
cell_list, j;
i_len,
i, // build handlebars object
j_len,
j; for (j = 0, j_len = all_docs_result.data.total_rows; j < j_len; j += 1) {
cell_list = [];
// build handlebars object for (i = 0, i_len = option_dict.column_list.length; i < i_len; i += 1) {
cell_list.push({
for (j = 0, j_len = all_docs_result.data.total_rows; j < j_len; j += 1) { "href": link_list[j],
cell_list = []; "value": all_docs_result.data.rows[j].value[option_dict.column_list[i].select]
for (i = 0, i_len = option_dict.column_list.length; i < i_len; i += 1) { });
cell_list.push({ }
"href": link_list[j], row_list.push({"cell_list": cell_list});
"value": all_docs_result.data.rows[j].value[option_dict.column_list[i].select] }
});
} for (i = 0; i < option_dict.column_list.length; i += 1) {
row_list.push({"cell_list": cell_list}); translated_column_list.push(gadget.translate(option_dict.column_list[i].title));
} }
return RSVP.all([
for (i = 0; i < option_dict.column_list.length; i += 1) { row_list,
translated_column_list.push(gadget.translate(option_dict.column_list[i].title)); RSVP.all(translated_column_list)
} ]);
return RSVP.all([ })
row_list, .push(function (result_list) {
RSVP.all(translated_column_list) content += listbox_widget_table({
]); widget_theme : option_dict.widget_theme,
}) search: option_dict.search,
.push(function (result_list) { column_list: result_list[1],
content += listbox_widget_table({ row_list: result_list[0]
widget_theme : option_dict.widget_theme, });
search: option_dict.search,
column_list: result_list[1], gadget.property_dict.element.querySelector(".custom-grid .ui-body-c")
row_list: result_list[0] .innerHTML = content;
}); gadget.property_dict.render_deferred.resolve();
});
gadget.property_dict.element.querySelector(".custom-grid .ui-body-c") })
.innerHTML = content;
gadget.property_dict.render_deferred.resolve(); /////////////////////////////////////////////////////////////////
}); // declared service
}) /////////////////////////////////////////////////////////////////
.declareService(function () {
///////////////////////////////////////////////////////////////// var gadget = this;
// declared service return new RSVP.Queue()
///////////////////////////////////////////////////////////////// .push(function () {
.declareService(function () { return gadget.property_dict.render_deferred.promise;
var gadget = this; })
return new RSVP.Queue() .push(function () {
.push(function () { return loopEventListener(
return gadget.property_dict.render_deferred.promise; gadget.property_dict.element.querySelector('form'),
}) 'submit',
.push(function () { false,
return loopEventListener( function (evt) {
gadget.property_dict.element.querySelector('form'), return gadget.redirect({
'submit', jio_key: gadget.property_dict.option_dict.jio_key || '',
false, page: gadget.property_dict.option_dict.search_page || '',
function (evt) { search: evt.target[0].value
return gadget.redirect({ });
jio_key: gadget.property_dict.option_dict.jio_key || '', }
page: gadget.property_dict.option_dict.search_page || '', );
search: evt.target[0].value, });
came_from_jio_key: gadget.property_dict.option_dict.came_from_jio_key });
});
} }(window, rJS, RSVP, Handlebars, loopEventListener));
); \ No newline at end of file
});
});
}(window, rJS, RSVP, Handlebars, loopEventListener));
...@@ -69,6 +69,10 @@ ...@@ -69,6 +69,10 @@
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>content_type</string> </key>
<value> <string>text/javascript</string> </value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>gadget_officejs_widget_listbox.js</string> </value> <value> <string>gadget_officejs_widget_listbox.js</string> </value>
...@@ -93,22 +97,20 @@ ...@@ -93,22 +97,20 @@
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
<value> <string>Web Script</string> </value> <value> <string>Web Script</string> </value>
</item> </item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>OfficeJS Widget Listbox JS</string> </value> <value> <string>OfficeJS Widget Listbox JS</string> </value>
</item> </item>
<item> <item>
<key> <string>version</string> </key> <key> <string>url_string</string> </key>
<value> <value>
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>version</string> </key>
<value> <string>001</string> </value>
</item>
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
...@@ -167,7 +169,7 @@ ...@@ -167,7 +169,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -189,7 +191,7 @@ ...@@ -189,7 +191,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1438012300.3</float> <float>1485779801.92</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -234,7 +236,7 @@ ...@@ -234,7 +236,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>956.14016.52782.35993</string> </value> <value> <string>956.64651.59655.13977</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -252,7 +254,7 @@ ...@@ -252,7 +254,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1482742612.5</float> <float>1485779785.44</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
...@@ -275,11 +277,13 @@ ...@@ -275,11 +277,13 @@
<dictionary> <dictionary>
<item> <item>
<key> <string>action</string> </key> <key> <string>action</string> </key>
<value> <string>detect_converted_file</string> </value> <value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -291,7 +295,7 @@ ...@@ -291,7 +295,7 @@
</item> </item>
<item> <item>
<key> <string>external_processing_state</string> </key> <key> <string>external_processing_state</string> </key>
<value> <string>converted</string> </value> <value> <string>empty</string> </value>
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
...@@ -309,7 +313,7 @@ ...@@ -309,7 +313,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1438012180.81</float> <float>1485779273.78</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -289,6 +289,66 @@ ...@@ -289,6 +289,66 @@
<value> <string>string</string> </value> <value> <string>string</string> </value>
</item> </item>
</dictionary> </dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_latest_document_version</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_latest_version</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_cache_file</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_x_frame_options</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_redirect_url</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_landing_page</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
</tuple> </tuple>
</value> </value>
</item> </item>
...@@ -323,7 +383,7 @@ ...@@ -323,7 +383,7 @@
<value> <value>
<tuple> <tuple>
<string>caching_policy/no-cache</string> <string>caching_policy/no-cache</string>
<string>aggregate/web_page_module/rjs_gadget_erp5_html</string> <string>aggregate/web_page_module/gadget_officejs_bootloader.html</string>
</tuple> </tuple>
</value> </value>
</item> </item>
...@@ -331,9 +391,13 @@ ...@@ -331,9 +391,13 @@
<key> <string>configuration_application_title</string> </key> <key> <string>configuration_application_title</string> </key>
<value> <string>Bookmark Manager</string> </value> <value> <string>Bookmark Manager</string> </value>
</item> </item>
<item>
<key> <string>configuration_cache_file</string> </key>
<value> <string>gadget_officejs_bookmark_manager.appcache</string> </value>
</item>
<item> <item>
<key> <string>configuration_content_security_policy</string> </key> <key> <string>configuration_content_security_policy</string> </key>
<value> <string>default-src \'none\'; img-src \'self\' data:; media-src \'self\' blob:; connect-src \'self\' https://localhost:5000 mail.tiolive.com data:; script-src \'self\' \'unsafe-eval\'; font-src netdna.bootstrapcdn.com; style-src \'self\' netdna.bootstrapcdn.com \'unsafe-inline\' data:; frame-src \'self\' data:</string> </value> <value> <string>default-src \'self\'; img-src \'self\' data:; media-src \'self\' blob:; connect-src \'self\' https://content.dropboxapi.com https://api.dropboxapi.com https://localhost:5000 mail.tiolive.com data: *.host.vifib.net *.node.vifib.com *.erp5.net; script-src \'self\' \'unsafe-eval\' \'unsafe-inline\'; font-src \'self\' netdna.bootstrapcdn.com; style-src \'self\' netdna.bootstrapcdn.com \'unsafe-inline\' data:; frame-src \'self\' data:</string> </value>
</item> </item>
<item> <item>
<key> <string>configuration_default_view_action_reference</string> </key> <key> <string>configuration_default_view_action_reference</string> </key>
...@@ -359,6 +423,18 @@ ...@@ -359,6 +423,18 @@
<key> <string>configuration_jio_gadget_url</string> </key> <key> <string>configuration_jio_gadget_url</string> </key>
<value> <string>gadget_officejs_jio.html</string> </value> <value> <string>gadget_officejs_jio.html</string> </value>
</item> </item>
<item>
<key> <string>configuration_landing_page</string> </key>
<value> <string>bookmark_manager_landing_page.html</string> </value>
</item>
<item>
<key> <string>configuration_latest_document_version</string> </key>
<value> <string>001</string> </value>
</item>
<item>
<key> <string>configuration_latest_version</string> </key>
<value> <string>development</string> </value>
</item>
<item> <item>
<key> <string>configuration_manifest_url</string> </key> <key> <string>configuration_manifest_url</string> </key>
<value> <string>gadget_officejs_bookmark_manager.appcache</string> </value> <value> <string>gadget_officejs_bookmark_manager.appcache</string> </value>
...@@ -367,6 +443,10 @@ ...@@ -367,6 +443,10 @@
<key> <string>configuration_panel_gadget_url</string> </key> <key> <string>configuration_panel_gadget_url</string> </key>
<value> <string>gadget_officejs_bookmark_manager_panel.html</string> </value> <value> <string>gadget_officejs_bookmark_manager_panel.html</string> </value>
</item> </item>
<item>
<key> <string>configuration_redirect_url</string> </key>
<value> <string>development</string> </value>
</item>
<item> <item>
<key> <string>configuration_router_gadget_url</string> </key> <key> <string>configuration_router_gadget_url</string> </key>
<value> <string>gadget_officejs_bookmark_manager_router.html</string> </value> <value> <string>gadget_officejs_bookmark_manager_router.html</string> </value>
...@@ -381,17 +461,21 @@ ...@@ -381,17 +461,21 @@
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>configuration_x_frame_options</string> </key>
<value> <string>ALLOW-FROM-ALL</string> </value>
</item>
<item> <item>
<key> <string>container_layout</string> </key> <key> <string>container_layout</string> </key>
<value> <string>WebSection_renderDefaultPageAsGadget</string> </value> <value> <string>WebSection_renderOfficeJSApplicationPage</string> </value>
</item> </item>
<item> <item>
<key> <string>content_layout</string> </key> <key> <string>content_layout</string> </key>
<value> <string>WebSection_renderDefaultPageAsGadget</string> </value> <value> <string>WebSection_renderOfficeJSApplicationPage</string> </value>
</item> </item>
<item> <item>
<key> <string>custom_render_method_id</string> </key> <key> <string>custom_render_method_id</string> </key>
<value> <string>WebSection_renderDefaultPageAsGadget</string> </value> <value> <string>WebSection_renderOfficeJSApplicationPage</string> </value>
</item> </item>
<item> <item>
<key> <string>description</string> </key> <key> <string>description</string> </key>
...@@ -409,7 +493,7 @@ ...@@ -409,7 +493,7 @@
</item> </item>
<item> <item>
<key> <string>layout_configuration_form_id</string> </key> <key> <string>layout_configuration_form_id</string> </key>
<value> <string>WebSection_viewRenderJSPreference</string> </value> <value> <string>WebSection_viewOfficeJSApplicationPreference</string> </value>
</item> </item>
<item> <item>
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
...@@ -423,7 +507,7 @@ ...@@ -423,7 +507,7 @@
</item> </item>
<item> <item>
<key> <string>skin_selection_name</string> </key> <key> <string>skin_selection_name</string> </key>
<value> <string>RJS</string> </value> <value> <string>RJSVersioning</string> </value>
</item> </item>
<item> <item>
<key> <string>static_language_selection</string> </key> <key> <string>static_language_selection</string> </key>
...@@ -616,7 +700,7 @@ ...@@ -616,7 +700,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>955.33994.14381.45824</string> </value> <value> <string>957.2063.41353.16093</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -634,7 +718,7 @@ ...@@ -634,7 +718,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1480323894.28</float> <float>1485956631.49</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Web Section" 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>Authenticated</string>
<string>Author</string>
<string>Manager</string>
<string>Member</string>
<string>Owner</string>
<string>Reviewer</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_folders_Permission</string> </key>
<value>
<tuple>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Copy_or_Move_Permission</string> </key>
<value>
<tuple>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Delete_objects_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>Authenticated</string>
<string>Author</string>
<string>Manager</string>
<string>Member</string>
<string>Owner</string>
<string>Reviewer</string>
</tuple>
</value>
</item>
<item>
<key> <string>__before_publishing_traverse__</string> </key>
<value>
<object>
<klass>
<global name="MultiHook" module="ZPublisher.BeforeTraverse"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_defined_in_class</string> </key>
<value> <int>1</int> </value>
</item>
<item>
<key> <string>_hookname</string> </key>
<value> <string>__before_publishing_traverse__</string> </value>
</item>
<item>
<key> <string>_list</string> </key>
<value>
<list>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</list>
</value>
</item>
<item>
<key> <string>_prior</string> </key>
<value>
<none/>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>__before_traverse__</string> </key>
<value>
<dictionary>
<item>
<key>
<tuple>
<int>99</int>
<string>ERP5 Web Section/development</string>
</tuple>
</key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>__translation_dict</string> </key>
<value>
<dictionary/>
</value>
</item>
<item>
<key> <string>_identity_criterion</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
<item>
<key> <string>_local_properties</string> </key>
<value>
<tuple>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_router_gadget_url</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_jio_gadget_url</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_panel_gadget_url</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_translation_gadget_url</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<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>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_hateoas_url</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_x_frame_options</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_manifest_url</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_content_security_policy</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
</tuple>
</value>
</item>
<item>
<key> <string>_range_criterion</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value>
</item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>caching_policy/must-revalidate</string>
<string>aggregate/web_page_module/rjs_gadget_erp5_html</string>
</tuple>
</value>
</item>
<item>
<key> <string>configuration_content_security_policy</string> </key>
<value> <string>default-src \'self\'; img-src \'self\' data:; media-src \'self\' blob:; connect-src \'self\' https://content.dropboxapi.com https://api.dropboxapi.com https://localhost:5000 mail.tiolive.com data: *.host.vifib.net *.node.vifib.com *.erp5.net; script-src \'self\' \'unsafe-eval\' \'unsafe-inline\'; font-src \'self\' netdna.bootstrapcdn.com; style-src \'self\' netdna.bootstrapcdn.com \'unsafe-inline\' data:; frame-src \'self\' data:</string> </value>
</item>
<item>
<key> <string>configuration_hateoas_url</string> </key>
<value> <string>hateoasnoauth</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>
</item>
<item>
<key> <string>configuration_manifest_url</string> </key>
<value> <string>gadget_officejs_bookmark_manager.appcache</string> </value>
</item>
<item>
<key> <string>configuration_panel_gadget_url</string> </key>
<value> <string>gadget_officejs_bookmark_manager_panel.html</string> </value>
</item>
<item>
<key> <string>configuration_router_gadget_url</string> </key>
<value> <string>gadget_officejs_bookmark_manager_router.html</string> </value>
</item>
<item>
<key> <string>configuration_translation_gadget_url</string> </key>
<value> <string>gadget_translation.html</string> </value>
</item>
<item>
<key> <string>configuration_x_frame_options</string> </key>
<value> <string>ALLOW-FROM-ALL</string> </value>
</item>
<item>
<key> <string>container_layout</string> </key>
<value> <string>WebSection_renderDefaultPageAsGadget</string> </value>
</item>
<item>
<key> <string>content_layout</string> </key>
<value> <string>WebSection_renderDefaultPageAsGadget</string> </value>
</item>
<item>
<key> <string>custom_render_method_id</string> </key>
<value> <string>WebSection_renderDefaultPageAsGadget</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>empty_criterion_valid</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>development</string> </value>
</item>
<item>
<key> <string>layout_configuration_form_id</string> </key>
<value> <string>WebSection_viewRenderJSPreference</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Web Section</string> </value>
</item>
<item>
<key> <string>short_title</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>skin_selection_name</string> </key>
<value> <string>RJS</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Bookmark Manager Development</string> </value>
</item>
<item>
<key> <string>visible</string> </key>
<value> <int>0</int> </value>
</item>
<item>
<key> <string>workflow_history</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="WebSectionTraversalHook" module="Products.ERP5.Document.WebSection"/>
</pickle>
<pickle>
<dictionary/>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="4" aka="AAAAAAAAAAQ=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="5" aka="AAAAAAAAAAU=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary>
<item>
<key> <string>category_publication_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAY=</string> </persistent>
</value>
</item>
<item>
<key> <string>edit_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAc=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="6" aka="AAAAAAAAAAY=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>publish</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</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>1485866849.13</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key> <string>validation_state</string> </key>
<value> <string>published</string> </value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record id="7" aka="AAAAAAAAAAc=">
<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>zope</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>956.64558.57457.27306</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>1485791952.93</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
...@@ -98,7 +98,7 @@ ...@@ -98,7 +98,7 @@
<key> <key>
<tuple> <tuple>
<int>99</int> <int>99</int>
<string>ERP5 Web Section/hateoas</string> <string>ERP5 Web Section/hateoasnoauth</string>
</tuple> </tuple>
</key> </key>
<value> <value>
...@@ -194,6 +194,46 @@ ...@@ -194,6 +194,46 @@
<value> <string>string</string> </value> <value> <string>string</string> </value>
</item> </item>
</dictionary> </dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_latest_document_version</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_latest_version</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_cache_file</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>id</string> </key>
<value> <string>configuration_x_frame_options</string> </value>
</item>
<item>
<key> <string>type</string> </key>
<value> <string>string</string> </value>
</item>
</dictionary>
</tuple> </tuple>
</value> </value>
</item> </item>
...@@ -217,6 +257,12 @@ ...@@ -217,6 +257,12 @@
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>configuration_cache_file</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>configuration_content_security_policy</string> </key> <key> <string>configuration_content_security_policy</string> </key>
<value> <value>
...@@ -229,6 +275,22 @@ ...@@ -229,6 +275,22 @@
<none/> <none/>
</value> </value>
</item> </item>
<item>
<key> <string>configuration_latest_document_version</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>configuration_latest_version</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>configuration_x_frame_options</string> </key>
<value> <string>ALLOW-FROM-ALL</string> </value>
</item>
<item> <item>
<key> <string>container_layout</string> </key> <key> <string>container_layout</string> </key>
<value> <string>ERP5Document_getHateoas</string> </value> <value> <string>ERP5Document_getHateoas</string> </value>
...@@ -265,13 +327,11 @@ ...@@ -265,13 +327,11 @@
</item> </item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>hateoas</string> </value> <value> <string>hateoasnoauth</string> </value>
</item> </item>
<item> <item>
<key> <string>layout_configuration_form_id</string> </key> <key> <string>layout_configuration_form_id</string> </key>
<value> <value> <string>WebSection_viewRenderJSPreference</string> </value>
<none/>
</value>
</item> </item>
<item> <item>
<key> <string>portal_type</string> </key> <key> <string>portal_type</string> </key>
...@@ -289,7 +349,7 @@ ...@@ -289,7 +349,7 @@
</item> </item>
<item> <item>
<key> <string>title</string> </key> <key> <string>title</string> </key>
<value> <string>Restricted Hateoas</string> </value> <value> <string>UnRestricted Hateoas</string> </value>
</item> </item>
<item> <item>
<key> <string>view_action_category</string> </key> <key> <string>view_action_category</string> </key>
...@@ -458,7 +518,7 @@ ...@@ -458,7 +518,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>952.28990.12586.6929</string> </value> <value> <string>956.64551.40466.25309</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -476,7 +536,7 @@ ...@@ -476,7 +536,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1478604794.11</float> <float>1486559317.62</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
...@@ -343,7 +343,7 @@ ...@@ -343,7 +343,7 @@
</item> </item>
<item> <item>
<key> <string>configuration_content_security_policy</string> </key> <key> <string>configuration_content_security_policy</string> </key>
<value> <string>default-src \'none\'; img-src \'self\' data:; media-src \'self\' blob:; connect-src \'self\' https://localhost:5000 mail.tiolive.com data: *.host.vifib.net *.node.vifib.com *.erp5.net; script-src \'self\' \'unsafe-eval\'; font-src netdna.bootstrapcdn.com; style-src \'self\' netdna.bootstrapcdn.com \'unsafe-inline\' data:; frame-src \'self\' data: *.app.officejs.com</string> </value> <value> <string>default-src \'self\'; img-src \'self\' data:; media-src \'self\' blob:; connect-src \'self\' https://localhost:5000 mail.tiolive.com data: *.host.vifib.net *.node.vifib.com *.erp5.net; script-src \'self\' \'unsafe-eval\'; font-src netdna.bootstrapcdn.com; style-src \'self\' netdna.bootstrapcdn.com \'unsafe-inline\' data:; frame-src \'self\' data: *.app.officejs.com</string> </value>
</item> </item>
<item> <item>
<key> <string>configuration_default_view_action_reference</string> </key> <key> <string>configuration_default_view_action_reference</string> </key>
...@@ -616,7 +616,7 @@ ...@@ -616,7 +616,7 @@
</item> </item>
<item> <item>
<key> <string>actor</string> </key> <key> <string>actor</string> </key>
<value> <string>cedric.le.ninivin</string> </value> <value> <string>zope</string> </value>
</item> </item>
<item> <item>
<key> <string>comment</string> </key> <key> <string>comment</string> </key>
...@@ -630,7 +630,7 @@ ...@@ -630,7 +630,7 @@
</item> </item>
<item> <item>
<key> <string>serial</string> </key> <key> <string>serial</string> </key>
<value> <string>954.17228.62546.5000</string> </value> <value> <string>956.64450.52709.9386</string> </value>
</item> </item>
<item> <item>
<key> <string>state</string> </key> <key> <string>state</string> </key>
...@@ -648,7 +648,7 @@ ...@@ -648,7 +648,7 @@
</tuple> </tuple>
<state> <state>
<tuple> <tuple>
<float>1475245019.47</float> <float>1486040963.94</float>
<string>UTC</string> <string>UTC</string>
</tuple> </tuple>
</state> </state>
......
<registered_skin_selection> <registered_skin_selection>
<skin_folder_selection>
<skin_folder>erp5_officejs_jio_connector</skin_folder>
<skin_selection>RJSVersioning</skin_selection>
</skin_folder_selection>
<skin_folder_selection>
<skin_folder>erp5_web_renderjs_ui</skin_folder>
<skin_selection>RJSVersioning</skin_selection>
</skin_folder_selection>
<skin_folder_selection> <skin_folder_selection>
<skin_folder>erp5_web_renderjs_ui_unsafe</skin_folder> <skin_folder>erp5_web_renderjs_ui_unsafe</skin_folder>
<skin_selection>RJSUnsafe</skin_selection> <skin_selection>RJSUnsafe</skin_selection>
</skin_folder_selection> </skin_folder_selection>
<skin_folder_selection>
<skin_folder>erp5_web_versioning</skin_folder>
<skin_selection>RJSVersioning</skin_selection>
</skin_folder_selection>
</registered_skin_selection> </registered_skin_selection>
\ No newline at end of file
"""
This script is part of ERP5 Web
ERP5 Web is a business template of ERP5 which provides a way
to create web sites which can display selected
ERP5 contents through multiple custom web layouts.
The default implementation searches for
documents which are in the user language if any
and which reference is equal to the name parameter.
Other implementations are possible: ex. display the last
version in the closest language rather than
the latest version in the user language.
NOTE:
- the portal parameter was introduced to
fix acquisition issues within the _aq_dynamic
lookup from WebSection class.
"""
from Products.ZSQLCatalog.SQLCatalog import SimpleQuery, ComplexQuery
if portal is None: portal = context.getPortalObject()
portal_catalog = portal.portal_catalog
# The list of portal types here should be large enough to include
# all portal_types defined in the various sections so that
# href tags which point to a document by reference can still work.
valid_portal_type_list = portal.getPortalDocumentTypeList()
# Find the applicable language
if language is None:
language = portal.Localizer.get_selected_language()
if effective_date is None:
if now is None:
now = DateTime()
effective_date = ComplexQuery(
SimpleQuery(effective_date=None),
SimpleQuery(effective_date=now, comparison_operator='<='),
logical_operator='or',
)
# Note: In sorts, NULL is considered lesser than non-NULL. So in descending
# sort, NULLs will be listed after non-NULLs, which is perfect for
# effective_date, which defines the date at which content becomes effective.
# None (NULL) effective date hence means "effective since infinite in te past".
base_sort = (('effective_date', 'descending'), )
# Portal Type and validation state should be handled by predicate
# By default
web_page_list = context.searchResults(
reference=name,
effective_date=effective_date,
language=(language, ''),
sort_on=(('language', 'descending'), ) + base_sort,
limit=1,
**kw)
if len(web_page_list) == 0:
# Default returns None
web_page = None
else:
# Try to get the first page on the list
web_page = web_page_list[0]
web_page = web_page.getObject()
# return the web page
return web_page
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>name, portal=None, language=None, validation_state=None, effective_date=None, now=None, **kw</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>WebSection_getDocumentValue</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
"""
This script is part of ERP5 Web
ERP5 Web is a business template of ERP5 which provides a way
to create web sites which can display selected
ERP5 contents through multiple custom web layouts.
This script returns a list of document values (ie. objects or brains)
which are considered as part of this section. It can be
a list of web pages (usual case), a list of products
(online catalog), a list of tenders (e-government), etc.
The default implementation provided here consists in
listing documents which meet the predicate defined
by the section (ex. which are part of a given publication_section)
and which are in "published" state and of a "Web Page" portal_type.
It should be noted that document selection should be implemented
as much as possible using the Domain API.
This script can be changed to meet other requirements. For example
one may want to display a list of products in a section. In this case,
this script must return a list of documents of type "Product"
with a "validated" state and in the appropriate product family.
This script is intended to be overriden by creating a new script
within the Web Section or Web Site instance. It can be also
customised per portal type within portal_skins. Customisation
thourgh local scripts is recommended to host multiple sites
on the same ERP5Site instance.
The API uses **kw so that it is possible to extend the behaviour of
the default script with advanced features (ex. group by reference,
by version, only select a specific publication state, etc.).
Here are some suggestions which can either be implemented using
SQL (group_by, order_by) or using additional python scripting
if this is compatible with data size.
SUGGESTIONS:
- Prevent showing duplicate references
- Add documents associated to this section through 'aggregate'.
- Display only the latest version and the appropriate language.
"""
from Products.ZSQLCatalog.SQLCatalog import SimpleQuery, ComplexQuery
from zExceptions import Unauthorized
try:
portal = container.getPortalObject()
kw = portal.portal_catalog.getSQLCatalog().getCannonicalArgumentDict(kw)
# First find the Web Section or Web Site we belong to
current_section = context.getWebSectionValue()
if all_versions is None:
all_versions = context.getLayoutProperty('layout_all_versions', default=False)
if all_languages is None:
all_languages = context.getLayoutProperty('layout_all_languages', default=False)
# Build the list of parameters
if not language:
language = portal.Localizer.get_selected_language()
if validation_state is None:
# XXX hardcoded validation state list.
# Use predicate or layout property instead
validation_state = ('released', 'released_alive', 'published',
'published_alive', 'shared', 'shared_alive',
'public', 'validated')
kw['validation_state'] = validation_state
if 'order_by_list' not in kw:
# XXX Do not sort by default, as it increases query time
kw['order_by_list'] = [('int_index', 'DESC'), ('reference', 'DESC')]
if effective_date is None:
if now is None:
now = DateTime()
effective_date = ComplexQuery(
SimpleQuery(effective_date=None),
SimpleQuery(effective_date=now, comparison_operator='<='),
logical_operator='or',
)
kw['effective_date'] = effective_date
if not all_versions:
group_by_list = set(kw.get('group_by_list', []))
if all_languages:
kw['group_by_list'] = list(group_by_list.union(('reference', 'language')))
else:
kw['group_by_list'] = list(group_by_list.union(('reference',)))
# Extend select_dict by order_by_list and group_by_list columns.
extra_column_set = {i[0] for i in kw.get('order_by_list', ())}.union(
kw.get('group_by_list', ()))
kw.setdefault('select_dict', {}).update(
(x.replace('.', '_') + '__ext__', x)
for x in extra_column_set if not x.endswith('__score__'))
#raise ValueError("%s" % current_section.WebSection_zGetDocumentValueList(language=language,
# all_languages=all_languages,
# src__=1,
# kw=kw))
return current_section.WebSection_zGetDocumentValueList(language=language,
all_languages=all_languages,
src__=src__,
kw=kw)
else:
if not all_languages:
kw['language'] = language
return current_section.searchResults(src__=src__, **kw)
except Unauthorized:
return []
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>Script_magic</string> </key>
<value> <int>3</int> </value>
</item>
<item>
<key> <string>_bind_names</string> </key>
<value>
<object>
<klass>
<global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
</klass>
<tuple/>
<state>
<dictionary>
<item>
<key> <string>_asgns</string> </key>
<value>
<dictionary>
<item>
<key> <string>name_container</string> </key>
<value> <string>container</string> </value>
</item>
<item>
<key> <string>name_context</string> </key>
<value> <string>context</string> </value>
</item>
<item>
<key> <string>name_m_self</string> </key>
<value> <string>script</string> </value>
</item>
<item>
<key> <string>name_subpath</string> </key>
<value> <string>traverse_subpath</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</state>
</object>
</value>
</item>
<item>
<key> <string>_params</string> </key>
<value> <string>language=None, validation_state=None, all_languages=None, all_versions=None, effective_date=None, now=None, src__=0, **kw</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>WebSection_getDocumentValueListBase</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
...@@ -14,5 +14,6 @@ return default_web_page.WebPage_viewAsWeb(mapping_dict={ ...@@ -14,5 +14,6 @@ return default_web_page.WebPage_viewAsWeb(mapping_dict={
"redirect_url": web_section.getLayoutProperty("configuration_redirect_url", default=""), "redirect_url": web_section.getLayoutProperty("configuration_redirect_url", default=""),
"cache_file": web_section.getLayoutProperty("configuration_cache_file", default=""), "cache_file": web_section.getLayoutProperty("configuration_cache_file", default=""),
"application_name": web_section.getTitle(), "application_name": web_section.getTitle(),
"sub_gadget_installer": web_section.getLayoutProperty("configuration_sub_gadget_installer", default="") "sub_gadget_installer": web_section.getLayoutProperty("configuration_sub_gadget_installer", default=""),
"landing_page": web_section.getLayoutProperty("configuration_landing_page", default="/")
}) })
...@@ -78,6 +78,7 @@ ...@@ -78,6 +78,7 @@
<string>my_configuration_resource_base_url</string> <string>my_configuration_resource_base_url</string>
<string>my_configuration_x_frame_options</string> <string>my_configuration_x_frame_options</string>
<string>my_configuration_cache_file</string> <string>my_configuration_cache_file</string>
<string>my_configuration_landing_page</string>
<string>my_configuration_sub_gadget_installer</string> <string>my_configuration_sub_gadget_installer</string>
<string>my_configuration_redirect_url</string> <string>my_configuration_redirect_url</string>
</list> </list>
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="ProxyField" module="Products.ERP5Form.ProxyField"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>delegated_list</string> </key>
<value>
<list>
<string>title</string>
</list>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>my_configuration_landing_page</string> </value>
</item>
<item>
<key> <string>message_values</string> </key>
<value>
<dictionary>
<item>
<key> <string>external_validator_failed</string> </key>
<value> <string>The input failed the external validator.</string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>overrides</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>tales</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</value>
</item>
<item>
<key> <string>values</string> </key>
<value>
<dictionary>
<item>
<key> <string>field_id</string> </key>
<value> <string>my_view_mode_reference</string> </value>
</item>
<item>
<key> <string>form_id</string> </key>
<value> <string>Base_viewFieldLibrary</string> </value>
</item>
<item>
<key> <string>target</string> </key>
<value> <string>Click to edit the target</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>Landing Page</string> </value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
erp5_officejs_connector erp5_officejs_connector
\ No newline at end of file erp5_web_renderjs_ui
\ No newline at end of file
erp5_web_renderjs_ui_unsafe | RJSUnsafe erp5_officejs_jio_connector | RJSVersioning
\ No newline at end of file erp5_web_renderjs_ui | RJSVersioning
erp5_web_renderjs_ui_unsafe | RJSUnsafe
erp5_web_versioning | RJSVersioning
\ No newline at end of file
erp5_officejs_theme erp5_officejs_theme
erp5_web_renderjs_ui
erp5_web_renderjs_ui_unsafe erp5_web_renderjs_ui_unsafe
erp5_web_versioning erp5_web_versioning
\ No newline at end of file
<registered_skin_selection> <registered_skin_selection>
<skin_folder_selection> <skin_folder_selection>
<skin_folder>erp5_officejs_jio_connector</skin_folder> <skin_folder>erp5_officejs_jio_connector</skin_folder>
<skin_selection>Hal</skin_selection> <skin_selection>Hal,HalRestricted</skin_selection>
</skin_folder_selection> </skin_folder_selection>
</registered_skin_selection> </registered_skin_selection>
\ No newline at end of file
erp5_officejs_jio_connector | Hal erp5_officejs_jio_connector | Hal
\ No newline at end of file erp5_officejs_jio_connector | HalRestricted
\ 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