diff --git a/calendar/inc/class.calendar_uilist.inc.php b/calendar/inc/class.calendar_uilist.inc.php index e20c759e42..6e72fc4cc1 100644 --- a/calendar/inc/class.calendar_uilist.inc.php +++ b/calendar/inc/class.calendar_uilist.inc.php @@ -450,6 +450,7 @@ class calendar_uilist extends calendar_ui { $icons = calendar_uiviews::integration_get_icons($app,$app_id,$event); } + $event['icons'] = $icons; } else { diff --git a/calendar/js/et2_widget_event.js b/calendar/js/et2_widget_event.js index 1f046bbf1f..a5ebe1b7aa 100644 --- a/calendar/js/et2_widget_event.js +++ b/calendar/js/et2_widget_event.js @@ -494,10 +494,13 @@ var et2_calendar_event = /** @class */ (function (_super) { var icons = []; if (this.options.value.is_private) { // Hide everything - icons.push(''); + icons.push(''); } else { - if (this.options.value.app !== 'calendar') { + if (this.options.value.icons) { + jQuery.extend(icons, this.options.value.icons); + } + else if (this.options.value.app !== 'calendar') { var app_icon = "" + (egw.link_get_registry(this.options.value.app, 'icon') || (this.options.value.app + '/navbar')); icons.push(''); } @@ -506,14 +509,14 @@ var et2_calendar_event = /** @class */ (function (_super) { } if (this.options.value.public == '0') { // Show private flag - icons.push(''); + icons.push(''); } if (this.options.value['recur_type']) { icons.push(''); } // icons for single user, multiple users or group(s) and resources - var single = ''; - var multiple = ''; + var single = ''; + var multiple = ''; for (var uid in this.options.value['participants']) { // @ts-ignore if (Object.keys(this.options.value.participants).length == 1 && !isNaN(uid)) { diff --git a/calendar/js/et2_widget_event.ts b/calendar/js/et2_widget_event.ts index 0ae5a62115..6daff1edb9 100644 --- a/calendar/js/et2_widget_event.ts +++ b/calendar/js/et2_widget_event.ts @@ -627,11 +627,15 @@ export class et2_calendar_event extends et2_valueWidget implements et2_IDetached if(this.options.value.is_private) { // Hide everything - icons.push(''); + icons.push(''); } else { - if(this.options.value.app !== 'calendar') + if(this.options.value.icons) + { + jQuery.extend(icons, this.options.value.icons); + } + else if(this.options.value.app !== 'calendar') { let app_icon = ""+(egw.link_get_registry(this.options.value.app,'icon') || (this.options.value.app + '/navbar')); icons.push(''); @@ -643,15 +647,15 @@ export class et2_calendar_event extends et2_valueWidget implements et2_IDetached if(this.options.value.public == '0') { // Show private flag - icons.push(''); + icons.push(''); } if(this.options.value['recur_type']) { icons.push(''); } // icons for single user, multiple users or group(s) and resources - const single = ''; - const multiple = ''; + const single = ''; + const multiple = ''; for(const uid in this.options.value['participants']) { // @ts-ignore diff --git a/calendar/lang/egw_en.lang b/calendar/lang/egw_en.lang index c035c97465..2858956360 100644 --- a/calendar/lang/egw_en.lang +++ b/calendar/lang/egw_en.lang @@ -370,6 +370,7 @@ monthly calendar en Monthly monthly (by date) calendar en Monthly -by date monthly (by day) calendar en Monthly -by day monthview calendar en Month view +multiple participants calendar en Multiple participants multiple week view calendar en Multiple week view name of current user, all other contact fields are valid too calendar en Name of current user, all other contact fields are valid too name of the day of the week (ex: monday) calendar en Name of the day of the week (ex: Monday) @@ -450,6 +451,7 @@ prevent deleting of entries admin en Prevent deleting of entries previous calendar en Previous private and global public calendar en Private and global public private and group public calendar en Private and group public +private event calendar en Private event private only calendar en Private only quantity calendar en Quantity quick add calendar en Quick add @@ -545,6 +547,7 @@ show this month calendar en Show this month show this week calendar en Show this week show year and age calendar en Show year and age single event calendar en Single event +single participant calendar en Single participant specify where url of the day links to calendar en Specify where URL of the day links to start calendar en Start start date/time calendar en Start date / time