diff --git a/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_erp5_page_contributor.html.html b/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_erp5_page_contributor.html.html
new file mode 100644
index 0000000000000000000000000000000000000000..ee959cb5929b57e132e39ce8c3aef0908c012700
--- /dev/null
+++ b/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_erp5_page_contributor.html.html
@@ -0,0 +1,23 @@
+<!doctype html>
+<html>
+  <head>
+    <meta charset="utf-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <title>OfficeJS Contributor</title>
+
+    <script src="rsvp.js"></script>
+    <script src="renderjs.js"></script>
+    <script src="gadget_erp5_page_contributor.js"></script>
+
+
+  </head>
+
+  <body>
+  <form>
+    <div data-gadget-url="gadget_erp5_form.html" data-gadget-scope="form" data-gadget-sandbox="public"></div>
+  
+  <button type="submit" data-i18n="Save" style="display:none;">Proceed</button>
+  </form>
+  <div class="result"></div>
+  </body>
+</html>
diff --git a/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_erp5_page_contributor.html.xml b/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_erp5_page_contributor.html.xml
new file mode 100644
index 0000000000000000000000000000000000000000..c2e27b6a6d8a496c1581094367d73553a373675d
--- /dev/null
+++ b/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_erp5_page_contributor.html.xml
@@ -0,0 +1,127 @@
+<?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>categories</string> </key>
+            <value>
+              <tuple>
+                <string>contributor/person_module/1</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_erp5_page_contributor.html</string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>gadget_erp5_page_contributor.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>OfficeJS Contributor</string> </value>
+        </item>
+        <item>
+            <key> <string>version</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_erp5_page_contributor.js.html b/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_erp5_page_contributor.js.html
new file mode 100644
index 0000000000000000000000000000000000000000..25f9dc9126f310f0630ec906b46178a033e04cb1
--- /dev/null
+++ b/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_erp5_page_contributor.js.html
@@ -0,0 +1,286 @@
+/*globals window, RSVP, rJS, RSVP, loopEventListener*/
+/*jslint indent: 2, nomen: true, maxlen: 80*/
+(function (window, rJS, RSVP, loopEventListener, jIO) {
+  "use strict";
+
+  function synchronisationErp5(gadget, submit_event) {
+    var query = "", url_list, i, param = {};
+
+    for (i = 0; i < submit_event.target.length; i += 1) {
+      if (submit_event.target[i].name) {
+        param[submit_event.target[i].name] = submit_event.target[i].value;
+      }
+    }
+
+    url_list = param.url_list.split('\n');
+    for (i = 0; i < url_list.length; i += 1) {
+      if (i > 0) {
+        query += " AND ";
+      }
+      query += 'id: "' + url_list[i] + '"';
+    }
+
+    return new RSVP.Queue()
+      .push(function () {
+        return gadget.notifySubmitting();
+      })
+      .push(function () {
+        return gadget.props.storage.createJio({
+          type: "replicate",
+          remote_sub_storage: {
+            type: "mapping",
+            mapping_dict: {
+              "id": {"equal": "reference"},
+              "text_content": {"equal": "text_content"},
+              "parent_relative_url": {"equal": "parent_relative_url"},
+              "portal_type": {"equal": "portal_type"},
+              "title": {"equal": "title"},
+              "description": {"equal": "description"}
+            },
+            sub_storage: {
+              type: "erp5",
+              url: param.url_a + "/erp5/web_site_module/hateoas",
+              default_view_reference: "jio_view"
+            }
+          },
+          local_sub_storage: {
+            type: "mapping",
+            query: {
+              "query": 'validation_state: "Draft" AND version:"'
+                + param.version_b + '"'
+            },
+            mapping_dict: {
+              "id": {"equal": "reference"},
+              "parent_relative_url": {"equal": "parent_relative_url"},
+              "portal_type": {"equal": "portal_type"},
+              "text_content": {"equal": "text_content"},
+              "title": {"equal": "title"},
+              "description": {"equal": "description"},
+              "version": {"default_value": param.version_b}
+            },
+            sub_storage: {
+              type: "erp5",
+              url: param.url_b + "/erp5/web_site_module/hateoas",
+              default_view_reference: "jio_view"
+            }
+          },
+          conflict_handling: param.reverse ? 1 : 2,
+          query: {query: query},
+          signature_storage: {
+            type: "uuid",
+            sub_storage: {
+              type: "indexeddb",
+              database: "contributor-hash"
+            }
+          }
+        });
+      })
+      .push(function () {
+        return RSVP.all([
+          gadget.props.storage.repair(),
+          gadget.props.storage.allDocs()
+        ]);
+      })
+      .push(function (result) {
+        gadget.props.element.querySelector(".result").innerHTML =
+          result[1].data.total_rows + " documents loaded";
+        return gadget.notifySubmitted();
+      });
+  }
+
+  function actualiseParam(gadget, event) {
+    var suffixe = "#/?page=contributor", key;
+    gadget.props.param[event.target.name] = event.target.value;
+    for (key in gadget.props.param) {
+      if (gadget.props.param.hasOwnProperty(key)) {
+        if (gadget.props.param[key] !== "") {
+          suffixe += "&" + key + "="
+            + gadget.props.param[key];
+        }
+      }
+    }
+    window.history.replaceState(
+      window.history.state,
+      "parameters changement",
+      encodeURI(suffixe)
+    );
+  }
+
+  rJS(window)
+    .ready(function (g) {
+      g.props = {};
+      return g.getElement()
+        .push(function (element) {
+          g.props.element = element;
+          g.props.param = {};
+        });
+    })
+
+    .declareAcquiredMethod("updateHeader", "updateHeader")
+    .declareAcquiredMethod("setSetting", "setSetting")
+    .declareAcquiredMethod("getSetting", "getSetting")
+    .declareAcquiredMethod("reload", "reload")
+    .declareAcquiredMethod("jio_repair", "jio_repair")
+    .declareAcquiredMethod("notifySubmitting", "notifySubmitting")
+    .declareAcquiredMethod("notifySubmitted", "notifySubmitted")
+
+    .declareMethod("triggerSubmit", function () {
+      this.props.element.querySelector("button").click();
+    })
+
+    .declareMethod("render", function (option) {
+      var g = this;
+      g.props.param.url_list = option.url_list || "";
+      g.props.param.url_a = option.url_a || "";
+      g.props.param.url_b = option.url_b || "";
+      g.props.param.version_b = option.version_b || "";
+      return g.declareGadget("gadget_jio.html", {scope: "storage_local"})
+        .push(function (storage_gadget) {
+          g.props.storage = storage_gadget;
+        })
+        .push(function () {
+          return g.updateHeader({
+            submit_action: true,
+            panel_action: false,
+            page_title: "Contributor"
+          });
+        })
+        .push(function () {
+          return g.getDeclaredGadget("form");
+        })
+        .push(function (form_gadget) {
+          g.props.form_gadget = form_gadget;
+          return form_gadget.render({
+            "erp5_document": {"_embedded": {"_view": {
+              "erp_a": {
+                "description": "",
+                "title": "",
+                "default": "Erp5 Source",
+                "css_class": "",
+                "required": 1,
+                "editable": 0,
+                "key": "erp_a",
+                "hidden": 0,
+                "type": "ReadOnlyField"
+              },
+              "url_a": {
+                "description": "",
+                "title": "Url source",
+                "default": g.props.param.url_a,
+                "css_class": "",
+                "required": 1,
+                "editable": 1,
+                "key": "url_a",
+                "hidden": 0,
+                "type": "StringField"
+              },
+              "url_list": {
+                "description": "",
+                "title": "References",
+                "default": g.props.param.url_list,
+                "css_class": "",
+                "required": 1,
+                "editable": 1,
+                "key": "url_list",
+                "hidden": 0,
+                "type": "TextAreaField"
+              },
+              "erp_b": {
+                "description": "",
+                "title": "",
+                "default": "Erp5 destination",
+                "css_class": "",
+                "required": 1,
+                "editable": 0,
+                "key": "erp_b",
+                "hidden": 0,
+                "type": "ReadOnlyField"
+              },
+              "url_b": {
+                "description": "",
+                "title": "Url destination",
+                "default": g.props.param.url_b,
+                "css_class": "",
+                "required": 1,
+                "editable": 1,
+                "key": "url_b",
+                "hidden": 0,
+                "type": "StringField"
+              },
+              "version_b": {
+                "description": "",
+                "title": "Version",
+                "default": g.props.param.version_b,
+                "css_class": "",
+                "required": 1,
+                "editable": 1,
+                "key": "version_b",
+                "hidden": 0,
+                "type": "StringField"
+              },
+              "reverse": {
+                "description": "",
+                "title": "Reverse",
+                "editable": 1,
+                "required": 1,
+                "key": "reverse",
+                "type": "CheckBoxField"
+              }
+            }}},
+            "form_definition": {
+              "group_list": [
+                [
+                  "left",
+                  [["erp_a"], ["url_a"]]
+                ],
+                [
+                  "right",
+                  [["erp_b"], ["url_b"], ["version_b"]]
+                ],
+                [
+                  "center",
+                  [["reverse"], ["url_list"]]
+                ]
+              ]
+            }
+          });
+        });
+    })
+    /////////////////////////////////////////
+    // Form submit
+    /////////////////////////////////////////
+    .declareService(function () {
+      var gadget = this, key, promise_list = [];
+
+      promise_list.push(loopEventListener(
+        gadget.props.element.querySelector('form'),
+        'submit',
+        true,
+        function (event) {
+          return synchronisationErp5(gadget, event);
+        }
+      ));
+
+      function linkActualiseParam(event) {
+        return actualiseParam(gadget, event);
+      }
+      
+      function saveParameter(event) {
+        return gadget.setSetting("contributor_parameter", gadget.param); 
+      }
+
+      for (key in gadget.props.param) {
+        if (gadget.props.param.hasOwnProperty(key)) {
+          promise_list.push(loopEventListener(
+            gadget.props.element.querySelector('form [name=' + key + ']'),
+            "keyup",
+            true,
+            linkActualiseParam
+          ));
+        }
+      }
+      
+      return RSVP.all(promise_list);
+    });
+
+}(window, rJS, RSVP, loopEventListener, jIO));
\ No newline at end of file
diff --git a/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_erp5_page_contributor.js.xml b/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_erp5_page_contributor.js.xml
new file mode 100644
index 0000000000000000000000000000000000000000..bb964fea4c881a324bccee54667259025d7df7c5
--- /dev/null
+++ b/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_erp5_page_contributor.js.xml
@@ -0,0 +1,127 @@
+<?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>categories</string> </key>
+            <value>
+              <tuple>
+                <string>contributor/person_module/1</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_erp5_page_contributor.js</string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>gadget_erp5_page_contributor.js</string> </value>
+        </item>
+        <item>
+            <key> <string>language</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Web Script</string> </value>
+        </item>
+        <item>
+            <key> <string>short_title</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>OfficeJS Contributor JS</string> </value>
+        </item>
+        <item>
+            <key> <string>version</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_officejs/PathTemplateItem/web_site_module/renderjs_contributor.xml b/bt5/erp5_officejs/PathTemplateItem/web_site_module/renderjs_contributor.xml
new file mode 100644
index 0000000000000000000000000000000000000000..6024fefc2d408e061d12dfad841bc05789611341
--- /dev/null
+++ b/bt5/erp5_officejs/PathTemplateItem/web_site_module/renderjs_contributor.xml
@@ -0,0 +1,525 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Web Site" 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 Site/renderjs_contributor</string>
+                      </tuple>
+                    </key>
+                    <value>
+                      <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+        <item>
+            <key> <string>_count</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>_identity_criterion</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>_local_properties</string> </key>
+            <value>
+              <tuple>
+                <dictionary>
+                  <item>
+                      <key> <string>id</string> </key>
+                      <value> <string>frontpage_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_frontpage_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_application_title</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_view_action_category</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_default_view_action_reference</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_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_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_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_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_content_security_policy</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>
+            </value>
+        </item>
+        <item>
+            <key> <string>_mt_index</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAU=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>_range_criterion</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAY=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>_tree</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAc=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>available_language</string> </key>
+            <value>
+              <tuple>
+                <string>en</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>caching_policy/must-revalidate</string>
+                <string>aggregate/web_page_module/rjs_gadget_erp5_launcher_html</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>configuration_application_title</string> </key>
+            <value> <string>Contributor</string> </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://localhost:5000 https: data:; script-src \'self\' \'unsafe-eval\'; font-src \'self\'; style-src \'self\' netdna.bootstrapcdn.com \'unsafe-inline\' data:; frame-src \'self\' data:</string> </value>
+        </item>
+        <item>
+            <key> <string>configuration_default_view_action_reference</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>configuration_frontpage_gadget_url</string> </key>
+            <value> <string>contributor</string> </value>
+        </item>
+        <item>
+            <key> <string>configuration_hateoas_url</string> </key>
+            <value> <string>hateoas/</string> </value>
+        </item>
+        <item>
+            <key> <string>configuration_header_gadget_url</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>configuration_jio_gadget_url</string> </key>
+            <value> <string>gadget_erp5_jio.html</string> </value>
+        </item>
+        <item>
+            <key> <string>configuration_manifest_url</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>configuration_panel_gadget_url</string> </key>
+            <value> <string>gadget_erp5_panel.html</string> </value>
+        </item>
+        <item>
+            <key> <string>configuration_router_gadget_url</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>configuration_translation_gadget_url</string> </key>
+            <value> <string>gadget_translation.html</string> </value>
+        </item>
+        <item>
+            <key> <string>configuration_view_action_category</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>configuration_x_frame_options</string> </key>
+            <value> <string>SAMEORIGIN</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.html</string> </value>
+        </item>
+        <item>
+            <key> <string>custom_render_method_id</string> </key>
+            <value> <string>WebSection_renderDefaultPageAsGadget</string> </value>
+        </item>
+        <item>
+            <key> <string>default_page_displayed</string> </key>
+            <value> <int>1</int> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>frontpage_gadget_url</string> </key>
+            <value> <string>gadget_woelfel_pt_frontpage.html</string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>renderjs_contributor</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 Site</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>static_language_selection</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>Office JS Contributor</string> </value>
+        </item>
+        <item>
+            <key> <string>visible</string> </key>
+            <value> <int>1</int> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="WebSiteTraversalHook" module="Products.ERP5.Document.WebSite"/>
+    </pickle>
+    <pickle>
+      <dictionary/>
+    </pickle>
+  </record>
+  <record id="3" aka="AAAAAAAAAAM=">
+    <pickle>
+      <global name="Length" module="BTrees.Length"/>
+    </pickle>
+    <pickle> <int>0</int> </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="OOBTree" module="BTrees.OOBTree"/>
+    </pickle>
+    <pickle>
+      <none/>
+    </pickle>
+  </record>
+  <record id="6" aka="AAAAAAAAAAY=">
+    <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="7" aka="AAAAAAAAAAc=">
+    <pickle>
+      <global name="OOBTree" module="BTrees.OOBTree"/>
+    </pickle>
+    <pickle>
+      <none/>
+    </pickle>
+  </record>
+</ZopeData>