From 12ef5b29de6d8d43024850ea7cf8744bdbb2a493 Mon Sep 17 00:00:00 2001 From: Romain Courteaud <romain@nexedi.com> Date: Wed, 12 Apr 2017 11:44:48 +0000 Subject: [PATCH] [erp5_web_renderjs_ui] Allow to surcharge the default page used to display a jio document --- .../rjs_gadget_erp5_launcher_html.html | 1 + .../rjs_gadget_erp5_launcher_html.xml | 4 +- .../rjs_gadget_erp5_router_js.js | 23 +++-- .../rjs_gadget_erp5_router_js.xml | 4 +- .../WebSection_viewRenderJSPreference.xml | 1 + ...n_default_jio_document_page_gadget_url.xml | 96 +++++++++++++++++++ .../WebSection_renderDefaultPageAsGadget.py | 1 + 7 files changed, 116 insertions(+), 14 deletions(-) create mode 100644 bt5/erp5_web_renderjs_ui/SkinTemplateItem/portal_skins/erp5_web_renderjs/WebSection_viewRenderJSPreference/my_configuration_default_jio_document_page_gadget_url.xml diff --git a/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_launcher_html.html b/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_launcher_html.html index 0b423da312..972cff0631 100644 --- a/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_launcher_html.html +++ b/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_launcher_html.html @@ -16,6 +16,7 @@ <script data-renderjs-configuration="default_view_reference" type="text/x-renderjs-configuration">${default_view_reference}</script> <script data-renderjs-configuration="hateoas_url" type="text/x-renderjs-configuration">${hateoas_url}</script> <script data-renderjs-configuration="frontpage_gadget" type="text/x-renderjs-configuration">${frontpage_gadget}</script> + <script data-renderjs-configuration="jio_document_page_gadget" type="text/x-renderjs-configuration">${jio_document_page_gadget}</script> <script data-renderjs-configuration="language_map" type="text/x-renderjs-configuration">${language_map}</script> <script data-renderjs-configuration="default_selected_language" type="text/x-renderjs-configuration">${default_selected_language}</script> <script data-renderjs-configuration="website_url_set" type="text/x-renderjs-configuration">${website_url_set}</script> diff --git a/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_launcher_html.xml b/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_launcher_html.xml index d5102a681d..5f09f0c08b 100644 --- a/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_launcher_html.xml +++ b/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_launcher_html.xml @@ -236,7 +236,7 @@ </item> <item> <key> <string>serial</string> </key> - <value> <string>958.32778.10430.62549</string> </value> + <value> <string>958.33121.48203.5614</string> </value> </item> <item> <key> <string>state</string> </key> @@ -254,7 +254,7 @@ </tuple> <state> <tuple> - <float>1491475425.69</float> + <float>1491989001.6</float> <string>UTC</string> </tuple> </state> diff --git a/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_router_js.js b/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_router_js.js index 6d50e30186..7feea0dfe7 100644 --- a/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_router_js.js +++ b/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_router_js.js @@ -619,16 +619,19 @@ function routeDisplay(gadget, command_options) { if (command_options.path) { if (command_options.args.page === undefined) { - return synchronousChangeState( - getDisplayUrlFor(command_options.path, { - page: 'form', - editable: command_options.args.editable, - view: command_options.args.view || 'view', - selection: command_options.args.selection, - selection_index: command_options.args.selection_index, - history: command_options.args.history - }) - ); + return gadget.getSetting("jio_document_page_gadget", "form") + .push(function (jio_document_page_gadget) { + return synchronousChangeState( + getDisplayUrlFor(command_options.path, { + page: jio_document_page_gadget, + editable: command_options.args.editable, + view: command_options.args.view || 'view', + selection: command_options.args.selection, + selection_index: command_options.args.selection_index, + history: command_options.args.history + }) + ); + }); } } diff --git a/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_router_js.xml b/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_router_js.xml index 7e41f1976a..17992e8c84 100644 --- a/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_router_js.xml +++ b/bt5/erp5_web_renderjs_ui/PathTemplateItem/web_page_module/rjs_gadget_erp5_router_js.xml @@ -232,7 +232,7 @@ </item> <item> <key> <string>serial</string> </key> - <value> <string>958.31324.24990.32187</string> </value> + <value> <string>958.41403.15830.7458</string> </value> </item> <item> <key> <string>state</string> </key> @@ -250,7 +250,7 @@ </tuple> <state> <tuple> - <float>1491384797.89</float> + <float>1491991472.33</float> <string>UTC</string> </tuple> </state> diff --git a/bt5/erp5_web_renderjs_ui/SkinTemplateItem/portal_skins/erp5_web_renderjs/WebSection_viewRenderJSPreference.xml b/bt5/erp5_web_renderjs_ui/SkinTemplateItem/portal_skins/erp5_web_renderjs/WebSection_viewRenderJSPreference.xml index 619b5404f6..750314c57b 100644 --- a/bt5/erp5_web_renderjs_ui/SkinTemplateItem/portal_skins/erp5_web_renderjs/WebSection_viewRenderJSPreference.xml +++ b/bt5/erp5_web_renderjs_ui/SkinTemplateItem/portal_skins/erp5_web_renderjs/WebSection_viewRenderJSPreference.xml @@ -87,6 +87,7 @@ <string>my_configuration_application_title</string> <string>my_configuration_hateoas_url</string> <string>my_configuration_frontpage_gadget_url</string> + <string>my_configuration_default_jio_document_page_gadget_url</string> </list> </value> </item> diff --git a/bt5/erp5_web_renderjs_ui/SkinTemplateItem/portal_skins/erp5_web_renderjs/WebSection_viewRenderJSPreference/my_configuration_default_jio_document_page_gadget_url.xml b/bt5/erp5_web_renderjs_ui/SkinTemplateItem/portal_skins/erp5_web_renderjs/WebSection_viewRenderJSPreference/my_configuration_default_jio_document_page_gadget_url.xml new file mode 100644 index 0000000000..4574f3c485 --- /dev/null +++ b/bt5/erp5_web_renderjs_ui/SkinTemplateItem/portal_skins/erp5_web_renderjs/WebSection_viewRenderJSPreference/my_configuration_default_jio_document_page_gadget_url.xml @@ -0,0 +1,96 @@ +<?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_default_jio_document_page_gadget_url</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>Default Jio Document Page Gadget</string> </value> + </item> + </dictionary> + </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_web_renderjs_ui/SkinTemplateItem/portal_skins/erp5_web_renderjs_ui/WebSection_renderDefaultPageAsGadget.py b/bt5/erp5_web_renderjs_ui/SkinTemplateItem/portal_skins/erp5_web_renderjs_ui/WebSection_renderDefaultPageAsGadget.py index 6fc91c1b6b..423af63c0f 100644 --- a/bt5/erp5_web_renderjs_ui/SkinTemplateItem/portal_skins/erp5_web_renderjs_ui/WebSection_renderDefaultPageAsGadget.py +++ b/bt5/erp5_web_renderjs_ui/SkinTemplateItem/portal_skins/erp5_web_renderjs_ui/WebSection_renderDefaultPageAsGadget.py @@ -32,6 +32,7 @@ view_as_web_method = default_web_page.getTypeBasedMethod( ) return view_as_web_method(mapping_dict={ "frontpage_gadget": web_section.getLayoutProperty("configuration_frontpage_gadget_url", default="worklist"), + "jio_document_page_gadget": web_section.getLayoutProperty("configuration_default_jio_document_page_gadget_url", default="form"), "application_title": web_section.getLayoutProperty("configuration_application_title", default="ERP5"), "action_view": web_section.getLayoutProperty("configuration_view_action_category", default="object_view"), "default_view_reference": web_section.getLayoutProperty("configuration_default_view_action_reference", default="view"), -- 2.30.9