summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/fields
diff options
context:
space:
mode:
authorChristophe Simonis <chs@odoo.com>2017-09-13 20:07:38 +0200
committerChristophe Simonis <chs@odoo.com>2017-09-13 20:07:38 +0200
commite390b0d64091237e42673abf1510d99906c398bc (patch)
treeaf54673843c40c78ec0c1cc4e9404e61555ecd1e /addons/web/static/src/js/fields
parent5b66c17ed27d5af02df71f088f627223319913f0 (diff)
parent1e17035f71f1b01c3694e4eaa92cb4baac528305 (diff)
[MERGE] forward port branch saas-17 up to 1e17035f71f
Diffstat (limited to 'addons/web/static/src/js/fields')
-rw-r--r--addons/web/static/src/js/fields/relational_fields.js15
1 files changed, 8 insertions, 7 deletions
diff --git a/addons/web/static/src/js/fields/relational_fields.js b/addons/web/static/src/js/fields/relational_fields.js
index 6da4e483d5b..b5d779039d6 100644
--- a/addons/web/static/src/js/fields/relational_fields.js
+++ b/addons/web/static/src/js/fields/relational_fields.js
@@ -402,8 +402,8 @@ var FieldMany2One = AbstractField.extend({
initial_ids: ids ? _.map(ids, function (x) { return x[0]; }) : undefined,
initial_view: view,
disable_multiple_selection: true,
- on_selected: function (element_ids) {
- self.reinitialize({id: element_ids[0]});
+ on_selected: function (records) {
+ self.reinitialize(records[0]);
self.activate();
}
})).open();
@@ -1177,15 +1177,16 @@ var FieldMany2Many = FieldX2Many.extend({
title: _t("Add: ") + this.string,
no_create: this.nodeOptions.no_create || !this.activeActions.create,
fields_view: this.attrs.views.form,
- on_selected: function (res_ids) {
- var new_ids = _.difference(res_ids, self.value.res_ids);
- if (new_ids.length) {
- var values = _.map(new_ids, function (id) {
+ on_selected: function (records) {
+ var resIDs = _.pluck(records, 'id');
+ var newIDs = _.difference(resIDs, self.value.res_ids);
+ if (newIDs.length) {
+ var values = _.map(newIDs, function (id) {
return {id: id};
});
self._setValue({
operation: 'ADD_M2M',
- ids: values
+ ids: values,
});
}
}