diff options
| author | Nicolas Martinelli <nim@odoo.com> | 2015-11-13 15:04:33 +0100 |
|---|---|---|
| committer | Nicolas Martinelli <nim@odoo.com> | 2015-11-16 08:53:04 +0100 |
| commit | 48942f1242acbdf6a74640104932adabfa9dcefe (patch) | |
| tree | f4f078523c0803f217c0bc0216d1ebbd4fb85c66 /addons/web/static/src/js/views/form_common.js | |
| parent | 3d7ae73305cd83faa187d9e73dd9db6e62a5af55 (diff) | |
[FIX] web: display Warning if "Save & Close"
When a warning is triggered by an onchange, clicking on "Save & Close"
will cause the warning to be closed as soon as it is shown. This fix
prevents the saving and closing if a warning message is detected.
opw-653503
Diffstat (limited to 'addons/web/static/src/js/views/form_common.js')
| -rw-r--r-- | addons/web/static/src/js/views/form_common.js | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/addons/web/static/src/js/views/form_common.js b/addons/web/static/src/js/views/form_common.js index 7ec310be6fc..3e31579826a 100644 --- a/addons/web/static/src/js/views/form_common.js +++ b/addons/web/static/src/js/views/form_common.js @@ -868,11 +868,15 @@ var FormViewDialog = ViewDialog.extend({ if(!readonly) { options.buttons.splice(0, 0, {text: _t("Save") + ((multi_select)? _t(" & Close") : ""), classes: "btn-primary o_formdialog_save", click: function() { // o_formdialog_save class for web_tests! - $.when(self.view_form.save()).done(function() { - self.view_form.reload_mutex.exec(function() { - self.trigger('record_saved'); - self.close(); - }); + self.view_form.onchanges_mutex.def.then(function() { + if (!self.view_form.warning_displayed) { + $.when(self.view_form.save()).done(function() { + self.view_form.reload_mutex.exec(function() { + self.trigger('record_saved'); + self.close(); + }); + }); + } }); } }); |
