From 0dd0275144634949657a2a64417a429a5e878ec5 Mon Sep 17 00:00:00 2001 From: Tristan Cavelier <tristan.cavelier@nexedi.com> Date: Thu, 12 Oct 2017 14:25:56 +0000 Subject: [PATCH] erp5_officejs_support_request_ui: prevent sending comment twice on form view discussable, by disabling submit button --- ...supportrequest_pt_form_view_discussable_js.js | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/bt5/erp5_officejs_support_request_ui/PathTemplateItem/web_page_module/gadget_supportrequest_pt_form_view_discussable_js.js b/bt5/erp5_officejs_support_request_ui/PathTemplateItem/web_page_module/gadget_supportrequest_pt_form_view_discussable_js.js index 199cfb9d38..c4ca2eeef0 100644 --- a/bt5/erp5_officejs_support_request_ui/PathTemplateItem/web_page_module/gadget_supportrequest_pt_form_view_discussable_js.js +++ b/bt5/erp5_officejs_support_request_ui/PathTemplateItem/web_page_module/gadget_supportrequest_pt_form_view_discussable_js.js @@ -184,15 +184,22 @@ } }); }) - .onEvent('submit', function () { + .declareJob('submitPostComment', function () { var gadget = this, + submitButton = null, + queue = null, editor = gadget.element.querySelector('#comment'); if (editor.value === '') { return gadget.notifySubmitted({message: "Post content can not be empty!"}); } - return gadget.notifySubmitted({message: "Comment added"}) + submitButton = gadget.element.querySelector("input[type=submit]"); + submitButton.disabled = true; + function enableSubmitButton() { + submitButton.disabled = false; + } + queue = gadget.notifySubmitted({message: "Posting comment"}) .push(function () { var choose_file_html_element = gadget.element.querySelector('#attachment'), file_blob = choose_file_html_element.files[0], @@ -219,5 +226,10 @@ editor.value = ''; return gadget.redirect({command: 'reload'}); }); + queue.then(enableSubmitButton, enableSubmitButton); + return queue; + }) + .onEvent('submit', function () { + this.submitPostComment(); }); }(window, rJS, RSVP, calculatePageTitle)); \ No newline at end of file -- 2.30.9