diff --git a/addons/web/static/src/js/views/calendar/calendar_renderer.js b/addons/web/static/src/js/views/calendar/calendar_renderer.js
index 9d9b09665c4..70dc4fb70d1 100644
--- a/addons/web/static/src/js/views/calendar/calendar_renderer.js
+++ b/addons/web/static/src/js/views/calendar/calendar_renderer.js
@@ -198,7 +198,6 @@ return AbstractRenderer.extend({
*/
getAvatars: function (record, fieldName, imageField) {
var field = this.state.fields[fieldName];
- var value = this._format(record, fieldName);
if (!record[fieldName]) {
return [];
@@ -210,6 +209,7 @@ return AbstractRenderer.extend({
} else if (field.type === 'many2one') {
return ['
'];
} else {
+ var value = this._format(record, fieldName);
var color = this.getColor(value);
if (isNaN(color)) {
return [''];
diff --git a/addons/web/static/test/views/calendar_tests.js b/addons/web/static/test/views/calendar_tests.js
index fdd7892e42a..a73b456a49c 100644
--- a/addons/web/static/test/views/calendar_tests.js
+++ b/addons/web/static/test/views/calendar_tests.js
@@ -315,6 +315,34 @@ QUnit.module('Views', {
calendar.destroy();
});
+ QUnit.test('rendering, with many2many', function (assert) {
+ assert.expect(1);
+
+ this.data.event.fields.partner_ids.type = 'many2many';
+
+ var calendar = createView({
+ View: CalendarView,
+ model: 'event',
+ data: this.data,
+ arch:
+ ' '+
+ ''+
+ '',
+ archs: archs,
+ mockRPC: mock_check_access_rights,
+ viewOptions: {
+ initialDate: initialDate,
+ },
+ });
+
+ assert.strictEqual(calendar.$('.o_calendar_filter_items .o_cal_avatar').length, 3,
+ "should have 3 avatars in the side bar");
+
+ calendar.destroy();
+ });
});
});