summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/views/form_widgets.js
diff options
context:
space:
mode:
authorChristophe Simonis <chs@odoo.com>2016-04-25 14:43:44 +0200
committerChristophe Simonis <chs@odoo.com>2016-04-25 14:43:44 +0200
commitbb8f0f1fc3d0f5574938019ca69cc917a55e7962 (patch)
treea6662094bb9c307981461fdb9872195032f2da06 /addons/web/static/src/js/views/form_widgets.js
parent9ad6a9df6e5e5654bc98c4c655848404b4e946b2 (diff)
parent4d337f72ed59d1e5260fa2bb4f3d238e6ed11415 (diff)
[MERGE] forward port of branch saas-9 up to 4d337f7
Diffstat (limited to 'addons/web/static/src/js/views/form_widgets.js')
-rw-r--r--addons/web/static/src/js/views/form_widgets.js19
1 files changed, 13 insertions, 6 deletions
diff --git a/addons/web/static/src/js/views/form_widgets.js b/addons/web/static/src/js/views/form_widgets.js
index 2a2a36cdaba..f3a8bd76041 100644
--- a/addons/web/static/src/js/views/form_widgets.js
+++ b/addons/web/static/src/js/views/form_widgets.js
@@ -1536,13 +1536,20 @@ var FieldStatus = common.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(data.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();
+ });
});
- });
+ }
}
},
});