From 01977005fb676e4e756952b161bbabc99488ba79 Mon Sep 17 00:00:00 2001 From: AmpioRosso Date: Sun, 24 Oct 2021 18:02:19 +0200 Subject: [PATCH 1/4] Issue #2424 - Don't display start time of full date events when using relative dates. Also use the fullDateEventDateFormat when showing full day events more than a week out --- modules/default/calendar/calendar.js | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/modules/default/calendar/calendar.js b/modules/default/calendar/calendar.js index 7525e3a8..428505bd 100755 --- a/modules/default/calendar/calendar.js +++ b/modules/default/calendar/calendar.js @@ -370,7 +370,7 @@ Module.register("calendar", { // Show relative times if (event.startDate >= now) { // Use relative time - if (!this.config.hideTime) { + if ((!this.config.hideTime) && (!event.fullDayEvent)) { timeWrapper.innerHTML = this.capFirst(moment(event.startDate, "x").calendar(null, { sameElse: this.config.dateFormat })); } else { timeWrapper.innerHTML = this.capFirst( @@ -378,13 +378,24 @@ Module.register("calendar", { sameDay: "[" + this.translate("TODAY") + "]", nextDay: "[" + this.translate("TOMORROW") + "]", nextWeek: "dddd", - sameElse: this.config.dateFormat + sameElse: (event.fullDayEvent ? this.config.fullDayEventDateFormat : this.config.dateFormat) }) ); } if (event.startDate - now < this.config.getRelative * oneHour) { // If event is within getRelative hours, display 'in xxx' time format or moment.fromNow() timeWrapper.innerHTML = this.capFirst(moment(event.startDate, "x").fromNow()); + } else if (event.fullDayEvent) { + // Full days events within the next two days + if (event.today) { + timeWrapper.innerHTML = this.capFirst(this.translate("TODAY")); + } else if (event.startDate - now < oneDay && event.startDate - now > 0) { + timeWrapper.innerHTML = this.capFirst(this.translate("TOMORROW")); + } else if (event.startDate - now < 2 * oneDay && event.startDate - now > 0) { + if (this.translate("DAYAFTERTOMORROW") !== "DAYAFTERTOMORROW") { + timeWrapper.innerHTML = this.capFirst(this.translate("DAYAFTERTOMORROW")); + } + } } } else { // Ongoing event From 46b63f52fe76e8e29263196c3535b606b86c3cec Mon Sep 17 00:00:00 2001 From: AmpioRosso Date: Sun, 24 Oct 2021 18:12:05 +0200 Subject: [PATCH 2/4] Updated changelog.md, fix for issue #2424 --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4a1639db..ceeaf3a7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ This project adheres to [Semantic Versioning](https://semver.org/). ### Fixed - Fixed error when accessing letsencrypt certificates +- Fixed Calendar module enhancement: displaying full events without time (#2424) ## [2.17.0] - 2021-10-01 From 1af282a7a1fa58962624f55c8e4eff99fb1899a2 Mon Sep 17 00:00:00 2001 From: AmpioRosso Date: Sat, 6 Nov 2021 15:03:08 +0100 Subject: [PATCH 3/4] Don't display 'in xxx' for all day events when using relative times --- modules/default/calendar/calendar.js | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/modules/default/calendar/calendar.js b/modules/default/calendar/calendar.js index 428505bd..bee800ee 100755 --- a/modules/default/calendar/calendar.js +++ b/modules/default/calendar/calendar.js @@ -368,7 +368,7 @@ Module.register("calendar", { } } else { // Show relative times - if (event.startDate >= now) { + if ((event.startDate >= now) || (event.fullDayEvent && event.today)) { // Use relative time if ((!this.config.hideTime) && (!event.fullDayEvent)) { timeWrapper.innerHTML = this.capFirst(moment(event.startDate, "x").calendar(null, { sameElse: this.config.dateFormat })); @@ -382,10 +382,7 @@ Module.register("calendar", { }) ); } - if (event.startDate - now < this.config.getRelative * oneHour) { - // If event is within getRelative hours, display 'in xxx' time format or moment.fromNow() - timeWrapper.innerHTML = this.capFirst(moment(event.startDate, "x").fromNow()); - } else if (event.fullDayEvent) { + if (event.fullDayEvent) { // Full days events within the next two days if (event.today) { timeWrapper.innerHTML = this.capFirst(this.translate("TODAY")); @@ -396,8 +393,10 @@ Module.register("calendar", { timeWrapper.innerHTML = this.capFirst(this.translate("DAYAFTERTOMORROW")); } } - } - } else { + } else if (event.startDate - now < this.config.getRelative * oneHour) { + // If event is within getRelative hours, display 'in xxx' time format or moment.fromNow() + timeWrapper.innerHTML = this.capFirst(moment(event.startDate, "x").fromNow()); + } } else { // Ongoing event timeWrapper.innerHTML = this.capFirst( this.translate("RUNNING", { From 405ec82dd007f6a0f0cfdae4c0c5759ac9baa1d1 Mon Sep 17 00:00:00 2001 From: rejas Date: Tue, 21 Dec 2021 15:22:52 +0100 Subject: [PATCH 4/4] Run prettier --- modules/default/calendar/calendar.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/modules/default/calendar/calendar.js b/modules/default/calendar/calendar.js index bee800ee..c13196f1 100755 --- a/modules/default/calendar/calendar.js +++ b/modules/default/calendar/calendar.js @@ -368,9 +368,9 @@ Module.register("calendar", { } } else { // Show relative times - if ((event.startDate >= now) || (event.fullDayEvent && event.today)) { + if (event.startDate >= now || (event.fullDayEvent && event.today)) { // Use relative time - if ((!this.config.hideTime) && (!event.fullDayEvent)) { + if (!this.config.hideTime && !event.fullDayEvent) { timeWrapper.innerHTML = this.capFirst(moment(event.startDate, "x").calendar(null, { sameElse: this.config.dateFormat })); } else { timeWrapper.innerHTML = this.capFirst( @@ -378,7 +378,7 @@ Module.register("calendar", { sameDay: "[" + this.translate("TODAY") + "]", nextDay: "[" + this.translate("TOMORROW") + "]", nextWeek: "dddd", - sameElse: (event.fullDayEvent ? this.config.fullDayEventDateFormat : this.config.dateFormat) + sameElse: event.fullDayEvent ? this.config.fullDayEventDateFormat : this.config.dateFormat }) ); } @@ -396,7 +396,8 @@ Module.register("calendar", { } else if (event.startDate - now < this.config.getRelative * oneHour) { // If event is within getRelative hours, display 'in xxx' time format or moment.fromNow() timeWrapper.innerHTML = this.capFirst(moment(event.startDate, "x").fromNow()); - } } else { + } + } else { // Ongoing event timeWrapper.innerHTML = this.capFirst( this.translate("RUNNING", {