diff --git a/addons/web/static/src/views/calendar/calendar_controller.js b/addons/web/static/src/views/calendar/calendar_controller.js index 848e16fad09..5c90bbf7723 100644 --- a/addons/web/static/src/views/calendar/calendar_controller.js +++ b/addons/web/static/src/views/calendar/calendar_controller.js @@ -116,6 +116,10 @@ export class CalendarController extends Component { return this.props.className; } + get editRecordDefaultDisplayText() { + return _t("New Event"); + } + getQuickCreateProps(record) { return { record, @@ -174,7 +178,9 @@ export class CalendarController extends Component { resModel: this.model.resModel, resId: record.id || false, context, - title: record.id ? _t("Open: %s", record.title) : _t("New Event"), + title: record.id + ? _t("Open: %s", record.title) + : this.editRecordDefaultDisplayText, viewId: this.model.formViewId, onRecordSaved: () => this.model.load(), }, diff --git a/addons/web/static/src/views/calendar/calendar_controller.scss b/addons/web/static/src/views/calendar/calendar_controller.scss index b018c09f33d..2df90e64f98 100644 --- a/addons/web/static/src/views/calendar/calendar_controller.scss +++ b/addons/web/static/src/views/calendar/calendar_controller.scss @@ -193,11 +193,14 @@ $o-cw-filter-avatar-size: 20px; height: $o-cw-filter-avatar-size; border-radius: 2px; object-fit: cover; + align-items: center; } } input:not(:checked) + label .o_cw_filter_input_bg { - background: transparent !important; + &:not(.o_cw_filter_avatar) { + background: transparent !important; + } i.fa { visibility: hidden; diff --git a/addons/web/static/src/views/calendar/calendar_model.js b/addons/web/static/src/views/calendar/calendar_model.js index e73b3d9fd7f..1209a355bb1 100644 --- a/addons/web/static/src/views/calendar/calendar_model.js +++ b/addons/web/static/src/views/calendar/calendar_model.js @@ -554,6 +554,14 @@ export class CalendarModel extends Model { }; } + /** + * @protected + */ + addFilterFields(record, filterInfo) { + return { + colorIndex: record.colorIndex, + }; + } //-------------------------------------------------------------------------- /** @@ -662,7 +670,7 @@ export class CalendarModel extends Model { filters.push({ id: value, [fieldName]: rawValue, - colorIndex: record.colorIndex, + ...this.addFilterFields(record, filterInfo), }); } } diff --git a/addons/web/static/src/views/calendar/calendar_renderer.scss b/addons/web/static/src/views/calendar/calendar_renderer.scss index 6fe718f55d0..232c9bf09fb 100644 --- a/addons/web/static/src/views/calendar/calendar_renderer.scss +++ b/addons/web/static/src/views/calendar/calendar_renderer.scss @@ -617,7 +617,7 @@ } .o_cw_filter_color_#{$i - 1} { - .o_cw_filter_input_bg { + .o_cw_filter_input_bg:not(.no_filter_color) { border-color: $color; background: $color; color: color-contrast($color); diff --git a/addons/web/static/src/views/calendar/filter_panel/calendar_filter_panel.xml b/addons/web/static/src/views/calendar/filter_panel/calendar_filter_panel.xml index dd78f971a26..7ca38926481 100644 --- a/addons/web/static/src/views/calendar/filter_panel/calendar_filter_panel.xml +++ b/addons/web/static/src/views/calendar/filter_panel/calendar_filter_panel.xml @@ -87,7 +87,7 @@ t-attf-for="o_calendar_filter_item_{{filterId}}" > diff --git a/addons/web/static/tests/views/calendar/calendar_view_tests.js b/addons/web/static/tests/views/calendar/calendar_view_tests.js index dc79d67790d..55c85799f1d 100644 --- a/addons/web/static/tests/views/calendar/calendar_view_tests.js +++ b/addons/web/static/tests/views/calendar/calendar_view_tests.js @@ -4779,4 +4779,34 @@ QUnit.module("Views", ({ beforeEach }) => { assert.verifySteps(["onWillStartModel", "render"]); }); + + QUnit.test("check apply default record label", async (assert) => { + assert.expect(1); + class TestCalendarController extends CalendarController { + get editRecordDefaultDisplayText() { + return "Test Display"; + } + } + + viewRegistry.add("test_calendar_view", { + ...calendarView, + Controller: TestCalendarController, + }); + + await makeView({ + type: "calendar", + resModel: "event", + serverData, + arch: ` + + `, + }); + + await clickDate(target, "2016-12-13"); + assert.strictEqual( + target.querySelector(".modal-title").textContent, + "Test Display", + "The text in the title should be Test Display" + ); + }); });