From 7a2c7c2ce2e5bb9565f4d5c1e72fe2bc723b654d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Le=20Ninivin?= <cedric.leninivin@tiolive.com> Date: Wed, 18 Jan 2017 14:42:25 +0000 Subject: [PATCH] erp5_officejs: Fix Panel close --- .../gadget_officejs_application_panel_js.js | 63 +++++++++++-------- .../gadget_officejs_application_panel_js.xml | 7 ++- 2 files changed, 40 insertions(+), 30 deletions(-) diff --git a/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_application_panel_js.js b/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_application_panel_js.js index fea061f44a..e4e37cc86b 100644 --- a/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_application_panel_js.js +++ b/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_application_panel_js.js @@ -29,6 +29,7 @@ .push(function (element) { g.props.element = element; g.props.jelement = $(element.querySelector("div")); + g.props.render_deferred = RSVP.defer(); }); }) @@ -83,41 +84,49 @@ value = element_list[i].textContent; push(key, value); } - return queue; + return queue + .push(function () { + return gadget.props.render_deferred.resolve(); + }); }) ///////////////////////////////////////////////////////////////// // declared services ///////////////////////////////////////////////////////////////// .declareService(function () { - var panel_gadget, - form_list, - event_list, - i, - len; - - - function formSubmit() { - panel_gadget.toggle(); - } - - panel_gadget = this; - form_list = panel_gadget.props.element.querySelectorAll('form'); - event_list = []; - - // XXX: not robust - Will break when search field is active - for (i = 0, len = form_list.length; i < len; i += 1) { - event_list[i] = loopEventListener( - form_list[i], - 'submit', - false, - formSubmit - ); - } - + var panel_gadget = this; return new RSVP.Queue() .push(function () { - return RSVP.all(event_list); + return panel_gadget.props.render_deferred.promise; + }) + .push(function () { + var form_list, + event_list, + i, + len; + + + function formSubmit() { + panel_gadget.toggle(); + } + + form_list = panel_gadget.props.element.querySelectorAll('form'); + event_list = []; + + // XXX: not robust - Will break when search field is active + for (i = 0, len = form_list.length; i < len; i += 1) { + event_list[i] = loopEventListener( + form_list[i], + 'submit', + false, + formSubmit + ); + } + + return new RSVP.Queue() + .push(function () { + return RSVP.all(event_list); + }); }); }); diff --git a/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_application_panel_js.xml b/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_application_panel_js.xml index c7f1c4f37a..68d3497169 100644 --- a/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_application_panel_js.xml +++ b/bt5/erp5_officejs/PathTemplateItem/web_page_module/gadget_officejs_application_panel_js.xml @@ -68,6 +68,7 @@ <value> <tuple> <string>contributor/person_module/1</string> + <string>contributor/person_module/2</string> </tuple> </value> </item> @@ -251,7 +252,7 @@ </item> <item> <key> <string>actor</string> </key> - <value> <string>zope</string> </value> + <value> <string>supercedriclen</string> </value> </item> <item> <key> <string>comment</string> </key> @@ -265,7 +266,7 @@ </item> <item> <key> <string>serial</string> </key> - <value> <string>954.32960.61602.49578</string> </value> + <value> <string>956.47493.18553.34594</string> </value> </item> <item> <key> <string>state</string> </key> @@ -283,7 +284,7 @@ </tuple> <state> <tuple> - <float>1476099905.42</float> + <float>1484749934.29</float> <string>UTC</string> </tuple> </state> -- 2.30.9