summaryrefslogtreecommitdiff
path: root/addons/web/static/src
diff options
context:
space:
mode:
authorOlivier Dony <odo@openerp.com>2016-04-13 17:04:24 +0200
committerOlivier Dony <odo@openerp.com>2016-04-13 17:04:49 +0200
commit2d4deca055aa1a96417257e19f60ec95bcdf17be (patch)
tree9f21bb71cf73a03034d54e4b3ddc336700c90f21 /addons/web/static/src
parent607ad5855e382cff76ebffd9f371fbdfc6a72608 (diff)
parent46c5f93b6cfa2b348078e674cd9e271ef5f81292 (diff)
[MERGE] Forward-port 8.0 up to 46c5f93b6cfa2b348078e674cd9e271ef5f81292
Diffstat (limited to 'addons/web/static/src')
-rw-r--r--addons/web/static/src/js/view_form.js19
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();
+ });
});
- });
+ }
}
},
});