From 0052222b549ca0607a295e08f282452e2231f6fc Mon Sep 17 00:00:00 2001 From: Ankita Raval Date: Wed, 29 Jan 2020 09:57:23 +0000 Subject: [PATCH] [REF] web: calendar: allow disabling the delete button In this commit, we add a new attribute "Delete" for user conveniency if he don't want 'Delete' button on popover card they easily achive by "delete=false" attribute and also add a testcase for it. task-id:2088954 --- .../src/js/views/calendar/calendar_popover.js | 1 + .../js/views/calendar/calendar_renderer.js | 2 ++ .../src/js/views/calendar/calendar_view.js | 1 + addons/web/static/src/xml/web_calendar.xml | 2 +- .../web/static/tests/views/calendar_tests.js | 32 +++++++++++++++++++ doc/reference/views.rst | 3 ++ odoo/addons/base/rng/calendar_view.rng | 1 + 7 files changed, 41 insertions(+), 1 deletion(-) diff --git a/addons/web/static/src/js/views/calendar/calendar_popover.js b/addons/web/static/src/js/views/calendar/calendar_popover.js index e6e5518d752..1094f345c7d 100644 --- a/addons/web/static/src/js/views/calendar/calendar_popover.js +++ b/addons/web/static/src/js/views/calendar/calendar_popover.js @@ -27,6 +27,7 @@ var CalendarPopover = Widget.extend(StandaloneFieldManagerMixin, { this.fields = eventInfo.fields; this.event = eventInfo.event; this.modelName = eventInfo.modelName; + this.canDelete = eventInfo.canDelete; }, /** * @override 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 7755097d412..471ccfbb0c3 100644 --- a/addons/web/static/src/js/views/calendar/calendar_renderer.js +++ b/addons/web/static/src/js/views/calendar/calendar_renderer.js @@ -191,6 +191,7 @@ return AbstractRenderer.extend({ this.color_map = {}; this.hideDate = params.hideDate; this.hideTime = params.hideTime; + this.canDelete = params.canDelete; }, /** * @override @@ -695,6 +696,7 @@ return AbstractRenderer.extend({ displayFields: this.displayFields, event: eventData, modelName: this.model, + canDelete: this.canDelete, }; var start = moment(eventData.r_start || eventData.start); diff --git a/addons/web/static/src/js/views/calendar/calendar_view.js b/addons/web/static/src/js/views/calendar/calendar_view.js index d55493186aa..dfdb41a54e0 100644 --- a/addons/web/static/src/js/views/calendar/calendar_view.js +++ b/addons/web/static/src/js/views/calendar/calendar_view.js @@ -148,6 +148,7 @@ var CalendarView = AbstractView.extend({ this.rendererParams.model = viewInfo.model; this.rendererParams.hideDate = utils.toBoolElse(attrs.hide_date || '', false); this.rendererParams.hideTime = utils.toBoolElse(attrs.hide_time || '', false); + this.rendererParams.canDelete = this.controllerParams.activeActions.delete; this.loadParams.fieldNames = _.uniq(fieldNames); this.loadParams.mapping = mapping; diff --git a/addons/web/static/src/xml/web_calendar.xml b/addons/web/static/src/xml/web_calendar.xml index 4166b5e123e..41020c9939a 100644 --- a/addons/web/static/src/xml/web_calendar.xml +++ b/addons/web/static/src/xml/web_calendar.xml @@ -45,7 +45,7 @@