diff options
| author | Christophe Simonis <chs@odoo.com> | 2016-06-28 18:05:25 +0200 |
|---|---|---|
| committer | Christophe Simonis <chs@odoo.com> | 2016-06-28 18:05:25 +0200 |
| commit | 93e6316029e237d41540bcf7ac594cc34b692d3a (patch) | |
| tree | edbb9fa9a400855d1089d8e612e98c83eb9d3904 /addons/web/static/src/js/views/form_relational_widgets.js | |
| parent | 8eb2be4668b5677b82d581023161d31acd8abab1 (diff) | |
| parent | 71530771ea42c5bf620115e38afeaa6112f720cf (diff) | |
[MERGE] forward port of branch saas-11 up to 7153077
Diffstat (limited to 'addons/web/static/src/js/views/form_relational_widgets.js')
| -rw-r--r-- | addons/web/static/src/js/views/form_relational_widgets.js | 24 |
1 files changed, 16 insertions, 8 deletions
diff --git a/addons/web/static/src/js/views/form_relational_widgets.js b/addons/web/static/src/js/views/form_relational_widgets.js index 624a2fa17a4..8e65677a8b3 100644 --- a/addons/web/static/src/js/views/form_relational_widgets.js +++ b/addons/web/static/src/js/views/form_relational_widgets.js @@ -320,7 +320,8 @@ var FieldMany2One = common.AbstractField.extend(common.CompletionFieldMixin, com var dataset = new data.DataSetStatic(this, this.field.relation, self.build_context()); var def = this.alive(dataset.name_get([self.get("value")])).done(function(data) { if (!data[0]) { - self.do_warn(_t("Render"), _t("No value found for the field "+self.field.string+" for value "+self.get("value"))); + self.do_warn(_t("Render"), + _.str.sprintf(_t("No value found for the field %s for value %s"), self.field.string, self.get("value"))); return; } self.display_value["" + self.get("value")] = data[0][1]; @@ -819,6 +820,7 @@ var FieldX2Many = AbstractManyField.extend({ self.is_loaded = self.is_loaded.then(function() { var view = self.get_active_view(); if (view.type === "list") { + view.controller.page = 0; return view.controller.reload_content(); } else if (view.controller.do_search) { return view.controller.do_search(self.build_domain(), self.dataset.get_context(), []); @@ -863,6 +865,9 @@ var FieldX2Many = AbstractManyField.extend({ } return true; }, + is_false: function() { + return _(this.dataset.ids).isEmpty(); + }, }); var X2ManyDataSet = data.BufferedDataSet.extend({ @@ -1259,13 +1264,16 @@ var FieldOne2Many = FieldX2Many.extend({ return this._super.apply(this, arguments); }, commit_value: function() { - var view = this.viewmanager.active_view; - if(view.type === "list" && view.controller.editable()) { - return this.mutex.def.then(function () { - return view.controller.save_edition(); - }); - } - return this.mutex.def; + var self = this; + return this.is_loaded.then(function() { + var view = self.viewmanager.active_view; + if(view.type === "list" && view.controller.editable()) { + return self.mutex.def.then(function () { + return view.controller.save_edition(); + }); + } + return self.mutex.def; + }); }, }); |
