diff --git a/addons/crm/crm_case_section_view.xml b/addons/crm/crm_case_section_view.xml
index 4b3c01e3bbf..e032376cb05 100644
--- a/addons/crm/crm_case_section_view.xml
+++ b/addons/crm/crm_case_section_view.xml
@@ -151,6 +151,11 @@
Planned Revenue per Month
Click to see a detailed analysis of opportunities.
+
+
+
+
+
diff --git a/addons/crm/static/src/css/crm.css b/addons/crm/static/src/css/crm.css
index ebd83861538..311727fe51d 100644
--- a/addons/crm/static/src/css/crm.css
+++ b/addons/crm/static/src/css/crm.css
@@ -2,12 +2,11 @@
width: 345px;
cursor: default;
}
-.openerp .oe_kanban_view .oe_kanban_crm_salesteams .oe_avatars {
- text-align: right;
- margin: -5px 0 -10px 0;
+.openerp .oe_kanban_view .oe_kanban_salesteams_avatars {
+ margin-top: 20px;
}
-.openerp .oe_kanban_view .oe_kanban_crm_salesteams .oe_avatars img {
+.openerp .oe_kanban_view .oe_kanban_salesteams_avatars img {
width: 30px;
height: 30px;
padding-left: 0px;
diff --git a/addons/crm/static/src/js/crm_case_section.js b/addons/crm/static/src/js/crm_case_section.js
index e027313d6dc..02f42288880 100644
--- a/addons/crm/static/src/js/crm_case_section.js
+++ b/addons/crm/static/src/js/crm_case_section.js
@@ -1,4 +1,40 @@
openerp.crm = function(openerp) {
+ openerp.web_kanban.KanbanView.include({
+ crm_display_members_names: function() {
+ /*
+ * Set avatar title for members.
+ * In kanban views, many2many fields only return a list of ids.
+ * We can implement return value of m2m fields like [(1,"Adminstration"),...].
+ */
+ var self = this;
+ var members_ids = [];
+
+ // Collect members ids
+ self.$el.find('img[data-member_id]').each(function() {
+ members_ids.push($(this).data('member_id'));
+ });
+
+ // Find their matching names
+ var dataset = new openerp.web.DataSetSearch(self, 'res.users', self.session.context, [['id', 'in', _.uniq(members_ids)]]);
+ dataset.read_slice(['id', 'name']).done(function(result) {
+ _.each(result, function(v, k) {
+ // Set the proper value in the DOM
+ self.$el.find('img[data-member_id=' + v.id + ']').attr('title', v.name).tipsy({
+ offset: 10
+ });
+ });
+ });
+ },
+ on_groups_started: function() {
+ var self = this;
+ self._super.apply(self, arguments);
+
+ if (self.dataset.model === 'crm.case.section') {
+ self.crm_display_members_names();
+ }
+ },
+ });
+
openerp.web_kanban.KanbanRecord.include({
on_card_clicked: function() {
if (this.view.dataset.model === 'crm.case.section') {
diff --git a/addons/sale_crm/sale_crm_view.xml b/addons/sale_crm/sale_crm_view.xml
index afaa6a3578c..8d0d6b1d817 100644
--- a/addons/sale_crm/sale_crm_view.xml
+++ b/addons/sale_crm/sale_crm_view.xml
@@ -297,7 +297,7 @@
-
+
Invoiced
Forecast