diff --git a/addons/web_kanban/static/src/js/kanban.js b/addons/web_kanban/static/src/js/kanban.js index 23fa4923277..bdc0d539d25 100644 --- a/addons/web_kanban/static/src/js/kanban.js +++ b/addons/web_kanban/static/src/js/kanban.js @@ -28,6 +28,7 @@ instance.web_kanban.KanbanView = instance.web.View.extend({ this.group_by_field = {}; this.grouped_by_m2o = false; this.many2manys = []; + this.m2m_context = {}; this.state = { groups : {}, records : {} @@ -115,6 +116,10 @@ instance.web_kanban.KanbanView = instance.web.View.extend({ this.aggregates[node.attrs.name] = node.attrs[this.group_operators[j]]; break; } + }; + var ftype = node.attrs.widget || this.fields_view.fields[node.attrs.name].type; + if(ftype == "many2many" && "context" in node.attrs) { + this.m2m_context[node.attrs.name] = node.attrs.context; } }, transform_qweb_template: function(node) { @@ -490,7 +495,7 @@ instance.web_kanban.KanbanView = instance.web.View.extend({ var field = record.record[name]; var $el = record.$('.oe_form_field.oe_tags[name=' + name + ']').empty(); if (!relations[field.relation]) { - relations[field.relation] = { ids: [], elements: {}}; + relations[field.relation] = { ids: [], elements: {}, context: self.m2m_context[name]}; } var rel = relations[field.relation]; field.raw_value.forEach(function(id) { @@ -504,7 +509,7 @@ instance.web_kanban.KanbanView = instance.web.View.extend({ }); }); _.each(relations, function(rel, rel_name) { - var dataset = new instance.web.DataSetSearch(self, rel_name, self.dataset.get_context()); + var dataset = new instance.web.DataSetSearch(self, rel_name, self.dataset.get_context(rel.context)); dataset.name_get(_.uniq(rel.ids)).done(function(result) { result.forEach(function(nameget) { $(rel.elements[nameget[0]]).append('' + _.str.escapeHTML(nameget[1]) + '');