diff options
| author | Christophe Simonis <chs@odoo.com> | 2016-06-28 15:12:06 +0200 |
|---|---|---|
| committer | Christophe Simonis <chs@odoo.com> | 2016-06-28 15:12:06 +0200 |
| commit | 5166fbd21b7b2917c6ee377cd4d8427014e30d93 (patch) | |
| tree | 62cefb2b737c9d871d366ff9e528a606c8abae0f /addons/web/static | |
| parent | b355377a25502644a54198d1c1d10a3d8f20441b (diff) | |
| parent | 6d51bce057ec5d94b26e045cd87e7850405a88e7 (diff) | |
[MERGE] forward port of branch saas-10 up to 6d51bce
Diffstat (limited to 'addons/web/static')
| -rw-r--r-- | addons/web/static/src/js/framework/pyeval.js | 2 | ||||
| -rw-r--r-- | addons/web/static/src/js/views/form_relational_widgets.js | 24 |
2 files changed, 15 insertions, 11 deletions
diff --git a/addons/web/static/src/js/framework/pyeval.js b/addons/web/static/src/js/framework/pyeval.js index 2b553d37e0f..d0708bdf356 100644 --- a/addons/web/static/src/js/framework/pyeval.js +++ b/addons/web/static/src/js/framework/pyeval.js @@ -958,7 +958,7 @@ function eval_arg (arg) { case 'context': case 'compound_context': return pyeval('contexts', [arg]); default: - throw new Error(_t("Unknown nonliteral type " + arg.__ref)); + throw new Error(_t("Unknown nonliteral type ") + ' ' + arg.__ref); } } 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 7acf464ae3c..26559527dbc 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,8 +865,8 @@ var FieldX2Many = AbstractManyField.extend({ } return true; }, - is_false: function() { - return false; + is_false: function () { + return _(this.dataset.ids).isEmpty(); }, }); @@ -1262,13 +1264,15 @@ 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; + 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; + }); }, }); |
