From 1e934e16af9394828a1c475f76e332c075276926 Mon Sep 17 00:00:00 2001 From: Karsten Hassel Date: Thu, 21 Jul 2022 22:07:36 +0200 Subject: [PATCH 1/7] respect rss ttl provided by newsfeed --- CHANGELOG.md | 1 + modules/default/newsfeed/newsfeedfetcher.js | 13 +++++++++++++ 2 files changed, 14 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4268310f..94ff28b1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,6 +16,7 @@ _This release is scheduled to be released on 2022-10-01._ ## Fixed - Broadcast all calendar events while still honoring global and per-calendar maximumEntries. +- Respect rss ttl provided by newsfeed (#2883). ## [2.20.0] - 2022-07-02 diff --git a/modules/default/newsfeed/newsfeedfetcher.js b/modules/default/newsfeed/newsfeedfetcher.js index a4d48ccd..85a2136d 100644 --- a/modules/default/newsfeed/newsfeedfetcher.js +++ b/modules/default/newsfeed/newsfeedfetcher.js @@ -78,6 +78,19 @@ const NewsfeedFetcher = function (url, reloadInterval, encoding, logFeedWarnings scheduleTimer(); }); + parser.on("ttl", (minutes) => { + try { + // 86400000 = 24 hours is mentioned in the docs as maximum value: + const ttlms = Math.min(minutes * 60 * 1000, 86400000); + if (ttlms > reloadInterval) { + reloadInterval = ttlms; + Log.info("Newsfeed-Fetcher: reloadInterval set to ttl=" + reloadInterval + " for url " + url); + } + } catch (error) { + Log.warn("Newsfeed-Fetcher: feed ttl is no valid integer=" + minutes + " for url " + url); + } + }); + const nodeVersion = Number(process.version.match(/^v(\d+\.\d+)/)[1]); const headers = { "User-Agent": "Mozilla/5.0 (Node.js " + nodeVersion + ") MagicMirror/" + global.version, From 66fffc932cf8d3c0b20dea97d4cfbd5a2333a168 Mon Sep 17 00:00:00 2001 From: Mike Bishop Date: Tue, 10 May 2022 14:05:19 -0400 Subject: [PATCH 2/7] English doesn't have a "day after tomorrow" word --- translations/en.json | 1 - 1 file changed, 1 deletion(-) diff --git a/translations/en.json b/translations/en.json index 43ba9c74..60217b96 100644 --- a/translations/en.json +++ b/translations/en.json @@ -3,7 +3,6 @@ "TODAY": "Today", "TOMORROW": "Tomorrow", - "DAYAFTERTOMORROW": "In 2 days", "RUNNING": "Ends in", "EMPTY": "No upcoming events.", "WEEK": "Week {weekNumber}", From 65e87aea523f1a186f6f45c60fbbdf187fbccd0e Mon Sep 17 00:00:00 2001 From: Mike Bishop Date: Mon, 25 Jul 2022 13:49:19 -0400 Subject: [PATCH 3/7] CHANGELOG --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4268310f..62d66f69 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,8 @@ _This release is scheduled to be released on 2022-10-01._ ## Updated +- Removed DAYAFTERTOMORROW from English + ## Fixed - Broadcast all calendar events while still honoring global and per-calendar maximumEntries. From 5aa9e7e0f62db55dea95dd2af2cfc00442dd210c Mon Sep 17 00:00:00 2001 From: Mike Bishop Date: Tue, 10 May 2022 14:05:38 -0400 Subject: [PATCH 4/7] Add showTimeToday option --- modules/default/calendar/calendar.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/default/calendar/calendar.js b/modules/default/calendar/calendar.js index 34d720d3..080e10b9 100644 --- a/modules/default/calendar/calendar.js +++ b/modules/default/calendar/calendar.js @@ -37,6 +37,7 @@ Module.register("calendar", { hidePrivate: false, hideOngoing: false, hideTime: false, + showTimeToday: false, colored: false, coloredSymbolOnly: false, customEvents: [], // Array of {keyword: "", symbol: "", color: ""} where Keyword is a regexp and symbol/color are to be applied for matched @@ -368,7 +369,7 @@ Module.register("calendar", { } else { timeWrapper.innerHTML = this.capFirst( moment(event.startDate, "x").calendar(null, { - sameDay: "[" + this.translate("TODAY") + "]", + sameDay: this.config.showTimeToday ? "LT" : "[" + this.translate("TODAY") + "]", nextDay: "[" + this.translate("TOMORROW") + "]", nextWeek: "dddd", sameElse: event.fullDayEvent ? this.config.fullDayEventDateFormat : this.config.dateFormat From be9761146cbf2506d6322ec1ee04dfaa756e1429 Mon Sep 17 00:00:00 2001 From: Mike Bishop Date: Mon, 25 Jul 2022 14:09:56 -0400 Subject: [PATCH 5/7] CHANGELOG --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4268310f..e7be6d7c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,9 @@ _This release is scheduled to be released on 2022-10-01._ ## Added +- New `showTimeToday` option in calendar module shows time for current-day + events even if `timeFormat` is `"relative"` + ## Updated ## Fixed From 0c1e5ea881d380f98dd3a0bcf0d67c95235e55a1 Mon Sep 17 00:00:00 2001 From: Mike Bishop Date: Mon, 25 Jul 2022 18:20:30 -0400 Subject: [PATCH 6/7] Use German as the base for tests --- tests/e2e/translations_spec.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tests/e2e/translations_spec.js b/tests/e2e/translations_spec.js index d05837cd..89ae60d9 100644 --- a/tests/e2e/translations_spec.js +++ b/tests/e2e/translations_spec.js @@ -164,7 +164,7 @@ describe("Translations", function () { dom.window.onload = function () { const { Translator } = dom.window; - Translator.load(mmm, translations.en, false, function () { + Translator.load(mmm, translations.de, false, function () { base = Object.keys(Translator.translations[mmm.name]).sort(); done(); }); @@ -175,8 +175,10 @@ describe("Translations", function () { console.log(missing); }); + // Using German as the base rather than English, since + // at least one translated word doesn't exist in English. for (let language in translations) { - if (language === "en") { + if (language === "de") { continue; } From c3339b47bb6ccfc8bdf927f9582d40217332a5ad Mon Sep 17 00:00:00 2001 From: Mike Bishop Date: Mon, 25 Jul 2022 18:34:24 -0400 Subject: [PATCH 7/7] Remove newline to re-run tests --- CHANGELOG.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e7be6d7c..afd59eda 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,8 +11,7 @@ _This release is scheduled to be released on 2022-10-01._ ## Added -- New `showTimeToday` option in calendar module shows time for current-day - events even if `timeFormat` is `"relative"` +- New `showTimeToday` option in calendar module shows time for current-day events even if `timeFormat` is `"relative"` ## Updated