From 59de9b11fe970536625a6900748fa17dd2d29922 Mon Sep 17 00:00:00 2001 From: Xavier ALT Date: Fri, 20 Apr 2012 13:28:12 +0200 Subject: [PATCH] [MERGE] web: readonly field in a class linked by a many2one doesn't refresh after clicking on a button (cherrypicked from trunk) bzr revid: xal@openerp.com-20120420112812-pxxqg9zp61hetv2h --- addons/web/static/src/js/view_form.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/addons/web/static/src/js/view_form.js b/addons/web/static/src/js/view_form.js index 335a4e39d72..e540ce10f95 100644 --- a/addons/web/static/src/js/view_form.js +++ b/addons/web/static/src/js/view_form.js @@ -515,10 +515,11 @@ openerp.web.FormView = openerp.web.View.extend( /** @lends openerp.web.FormView# save_deferral = self.dataset.create(values).pipe(function(r) { return self.on_created(r, undefined, prepend_on_create); }, null); - } else if (_.isEmpty(values)) { + } else if (_.isEmpty(values) && ! self.force_dirty) { //console.log("FormView(", self, ") : Nothing to save"); save_deferral = $.Deferred().resolve({}).promise(); } else { + self.force_dirty = false; //console.log("FormView(", self, ") : About to save", values); save_deferral = self.dataset.write(self.datarecord.id, values, {}).pipe(function(r) { return self.on_saved(r); @@ -1251,6 +1252,7 @@ openerp.web.form.WidgetButton = openerp.web.form.Widget.extend({ } }; if (!this.node.attrs.special) { + this.view.force_dirty = true; return this.view.recursive_save().pipe(exec_action); } else { return exec_action();