diff --git a/addons/web/static/src/js/views/calendar/calendar_model.js b/addons/web/static/src/js/views/calendar/calendar_model.js index a404b618480..403d828d824 100644 --- a/addons/web/static/src/js/views/calendar/calendar_model.js +++ b/addons/web/static/src/js/views/calendar/calendar_model.js @@ -452,7 +452,7 @@ return AbstractModel.extend({ dayNamesShort: moment.weekdaysShort(), firstDay: this.week_start, slotLabelFormat: _t.database.parameters.time_format.search("%H") !== -1 ? format24Hour : format12Hour, - allDaySlot: this.mapping.all_day, + allDaySlot: this.mapping.all_day || this.fields[this.mapping.date_start].type === 'date', }; }, /** diff --git a/addons/web/static/tests/views/calendar_tests.js b/addons/web/static/tests/views/calendar_tests.js index c27ac85f498..7b69e8ce167 100644 --- a/addons/web/static/tests/views/calendar_tests.js +++ b/addons/web/static/tests/views/calendar_tests.js @@ -2468,6 +2468,26 @@ QUnit.module('Views', { calendar.destroy(); }); + QUnit.test('set event as all day when field is date (without all_day mapping)', async function (assert) { + assert.expect(1); + + this.data.event.records[0].start_date = "2016-12-14"; + + var calendar = await createCalendarView({ + View: CalendarView, + model: 'event', + data: this.data, + arch: ``, + archs: archs, + viewOptions: { + initialDate: initialDate, + }, + }); + assert.containsOnce(calendar, '.fc-day-grid .fc-event-container', + "should be one event in the all day row"); + calendar.destroy(); + }); + QUnit.test('quickcreate avoid double event creation', async function (assert) { assert.expect(1); var createCount = 0;