summaryrefslogtreecommitdiff
path: root/addons/web/static
diff options
context:
space:
mode:
authorChristophe Simonis <chs@odoo.com>2016-06-28 15:12:06 +0200
committerChristophe Simonis <chs@odoo.com>2016-06-28 15:12:06 +0200
commit5166fbd21b7b2917c6ee377cd4d8427014e30d93 (patch)
tree62cefb2b737c9d871d366ff9e528a606c8abae0f /addons/web/static
parentb355377a25502644a54198d1c1d10a3d8f20441b (diff)
parent6d51bce057ec5d94b26e045cd87e7850405a88e7 (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.js2
-rw-r--r--addons/web/static/src/js/views/form_relational_widgets.js24
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;
+ });
},
});