diff options
| author | Olivier Dony <odo@openerp.com> | 2016-04-13 17:04:24 +0200 |
|---|---|---|
| committer | Olivier Dony <odo@openerp.com> | 2016-04-13 17:04:49 +0200 |
| commit | 2d4deca055aa1a96417257e19f60ec95bcdf17be (patch) | |
| tree | 9f21bb71cf73a03034d54e4b3ddc336700c90f21 /addons/web/static | |
| parent | 607ad5855e382cff76ebffd9f371fbdfc6a72608 (diff) | |
| parent | 46c5f93b6cfa2b348078e674cd9e271ef5f81292 (diff) | |
[MERGE] Forward-port 8.0 up to 46c5f93b6cfa2b348078e674cd9e271ef5f81292
Diffstat (limited to 'addons/web/static')
| -rw-r--r-- | addons/web/static/src/js/view_form.js | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/addons/web/static/src/js/view_form.js b/addons/web/static/src/js/view_form.js index 755288e03bc..6412d349a1f 100644 --- a/addons/web/static/src/js/view_form.js +++ b/addons/web/static/src/js/view_form.js @@ -6187,13 +6187,20 @@ instance.web.form.FieldStatus = instance.web.form.AbstractField.extend({ val = $li.data("id"); } if (val != self.get('value')) { - this.view.recursive_save().done(function() { - var change = {}; - change[self.name] = val; - self.view.dataset.write(self.view.datarecord.id, change).done(function() { - self.view.reload(); + if(!this.view.datarecord.id || + this.view.datarecord.id.toString().match(instance.web.BufferedDataSet.virtual_id_regex)) { + // don't save, only set value for not-yet-saved many2ones + self.set_value(val); + } + else { + this.view.recursive_save().done(function() { + var change = {}; + change[self.name] = val; + self.view.dataset.write(self.view.datarecord.id, change).done(function() { + self.view.reload(); + }); }); - }); + } } }, }); |
