From d5caadd9062ae7ee6dcdfe25caa4c435d01c82ea Mon Sep 17 00:00:00 2001 From: wolfen351 Date: Sat, 27 Jun 2020 19:43:09 +1200 Subject: [PATCH 01/14] Correct calendar display - account for current timezone --- modules/default/calendar/calendar.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/modules/default/calendar/calendar.js b/modules/default/calendar/calendar.js index d93f570c..97eca85f 100755 --- a/modules/default/calendar/calendar.js +++ b/modules/default/calendar/calendar.js @@ -469,6 +469,12 @@ Module.register("calendar", { var calendar = this.calendarData[c]; for (var e in calendar) { var event = JSON.parse(JSON.stringify(calendar[e])); // clone object + + // correct data for the current timezone + var offset = - ((new Date()).getTimezoneOffset() * 60 * 1000); + event.startDate = (event.startDate - offset); + event.endDate = (event.endDate - offset); + if(event.endDate < now) { continue; } From dc9d6f6b79ed666e52658f6ab9ed584ff93ec388 Mon Sep 17 00:00:00 2001 From: Bryan Zhu Date: Tue, 30 Jun 2020 12:29:00 -0400 Subject: [PATCH 02/14] fixed minor typo (apiKey vs. appid) --- modules/default/weather/weather.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/default/weather/weather.js b/modules/default/weather/weather.js index 150ba084..be5c3a3f 100644 --- a/modules/default/weather/weather.js +++ b/modules/default/weather/weather.js @@ -15,7 +15,7 @@ Module.register("weather", { location: false, locationID: false, - appid: "", + apiKey: "", units: config.units, tempUnits: config.units, From 0939e405b4019772d4984484761a003da23ff410 Mon Sep 17 00:00:00 2001 From: oemel09 Date: Thu, 2 Jul 2020 20:54:20 +0200 Subject: [PATCH 03/14] Adjusts maxNumberOfDays depending on the endpoint --- modules/default/weatherforecast/weatherforecast.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/modules/default/weatherforecast/weatherforecast.js b/modules/default/weatherforecast/weatherforecast.js index 83389911..ecda5a53 100644 --- a/modules/default/weatherforecast/weatherforecast.js +++ b/modules/default/weatherforecast/weatherforecast.js @@ -294,7 +294,15 @@ Module.register("weatherforecast", { return; } - params += "&cnt=" + (this.config.maxNumberOfDays < 1 || this.config.maxNumberOfDays > 17 ? 7 : this.config.maxNumberOfDays); + let numberOfDays; + if (this.config.forecastEndpoint === "forecast") { + numberOfDays = (this.config.maxNumberOfDays < 1 || this.config.maxNumberOfDays > 5 ? 5 : this.config.maxNumberOfDays); + // don't get forecasts for the 6th day, as it would not represent the whole day + numberOfDays = numberOfDays * 8 - Math.ceil(new Date().getHours() / 3) % 8; + } else { + numberOfDays = (this.config.maxNumberOfDays < 1 || this.config.maxNumberOfDays > 17) ? 7 : this.config.maxNumberOfDays; + } + params += "&cnt=" + numberOfDays; params += "&units=" + this.config.units; params += "&lang=" + this.config.lang; From 4ed323559058932dd58c012d39757e7fd7cea140 Mon Sep 17 00:00:00 2001 From: oemel09 Date: Thu, 2 Jul 2020 20:56:48 +0200 Subject: [PATCH 04/14] Adds fix to changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 069c61f8..68ebc0ea 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,6 +16,7 @@ _This release is scheduled to be released on 2020-10-01._ ### Deleted ### Fixed +- Fix the use of "maxNumberOfDays" in the module "weatherforecast depending on the endpoint (forecast/daily or forecast)". [#2018](https://github.com/MichMich/MagicMirror/issues/2018) ## [2.12.0] - 2020-07-01 From 246dc663c4a82f9f0284de21577f3c24cd7ace9c Mon Sep 17 00:00:00 2001 From: oemel09 Date: Thu, 2 Jul 2020 22:22:04 +0200 Subject: [PATCH 05/14] Applies suggestions from prettier, floor instead of ceil --- modules/default/weatherforecast/weatherforecast.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/modules/default/weatherforecast/weatherforecast.js b/modules/default/weatherforecast/weatherforecast.js index ecda5a53..d872ee01 100644 --- a/modules/default/weatherforecast/weatherforecast.js +++ b/modules/default/weatherforecast/weatherforecast.js @@ -296,11 +296,11 @@ Module.register("weatherforecast", { let numberOfDays; if (this.config.forecastEndpoint === "forecast") { - numberOfDays = (this.config.maxNumberOfDays < 1 || this.config.maxNumberOfDays > 5 ? 5 : this.config.maxNumberOfDays); + numberOfDays = this.config.maxNumberOfDays < 1 || this.config.maxNumberOfDays > 5 ? 5 : this.config.maxNumberOfDays; // don't get forecasts for the 6th day, as it would not represent the whole day - numberOfDays = numberOfDays * 8 - Math.ceil(new Date().getHours() / 3) % 8; + numberOfDays = numberOfDays * 8 - (Math.floor(new Date().getHours() / 3) % 8); } else { - numberOfDays = (this.config.maxNumberOfDays < 1 || this.config.maxNumberOfDays > 17) ? 7 : this.config.maxNumberOfDays; + numberOfDays = this.config.maxNumberOfDays < 1 || this.config.maxNumberOfDays > 17 ? 7 : this.config.maxNumberOfDays; } params += "&cnt=" + numberOfDays; From 92cc41dec661f7f8cca593e4da25895c40f7bb4c Mon Sep 17 00:00:00 2001 From: Michael Teeuw Date: Fri, 3 Jul 2020 21:53:18 +0200 Subject: [PATCH 06/14] Fix linting issue. --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 68ebc0ea..66c307c3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,6 +16,7 @@ _This release is scheduled to be released on 2020-10-01._ ### Deleted ### Fixed + - Fix the use of "maxNumberOfDays" in the module "weatherforecast depending on the endpoint (forecast/daily or forecast)". [#2018](https://github.com/MichMich/MagicMirror/issues/2018) ## [2.12.0] - 2020-07-01 From a06615355625fea82deae86f36d061ecf1521679 Mon Sep 17 00:00:00 2001 From: Michael Teeuw Date: Sat, 4 Jul 2020 21:26:22 +0200 Subject: [PATCH 07/14] Add updated changelog. --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 66c307c3..1e38f0b5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,7 @@ _This release is scheduled to be released on 2020-10-01._ ### Fixed - Fix the use of "maxNumberOfDays" in the module "weatherforecast depending on the endpoint (forecast/daily or forecast)". [#2018](https://github.com/MichMich/MagicMirror/issues/2018) +- Fix calendar display. Account for current timezone. [#2068](https://github.com/MichMich/MagicMirror/issues/2068) ## [2.12.0] - 2020-07-01 From bd0f707aed194fd5333b9b7f81d957e011e48c6f Mon Sep 17 00:00:00 2001 From: Michael Teeuw Date: Sat, 4 Jul 2020 21:40:31 +0200 Subject: [PATCH 08/14] Add changelog. --- CHANGELOG.md | 2 ++ modules/default/weather/weather.js | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1e38f0b5..11bfedd6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,8 @@ _This release is scheduled to be released on 2020-10-01._ ### Updated +- Change incorrect weather.js default properties. + ### Deleted ### Fixed diff --git a/modules/default/weather/weather.js b/modules/default/weather/weather.js index be5c3a3f..a8b6cc53 100644 --- a/modules/default/weather/weather.js +++ b/modules/default/weather/weather.js @@ -15,7 +15,6 @@ Module.register("weather", { location: false, locationID: false, - apiKey: "", units: config.units, tempUnits: config.units, @@ -43,6 +42,8 @@ Module.register("weather", { initialLoadDelay: 0, // 0 seconds delay retryDelay: 2500, + apiKey: "", + apiSecret: "", apiVersion: "2.5", apiBase: "https://api.openweathermap.org/data/", weatherEndpoint: "/weather", From 3282ed4fea3b43a4a789b7ebce3b09d0ee06e729 Mon Sep 17 00:00:00 2001 From: Michael Teeuw Date: Sat, 4 Jul 2020 21:49:14 +0200 Subject: [PATCH 09/14] Add TODO --- modules/default/weather/weather.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/default/weather/weather.js b/modules/default/weather/weather.js index a8b6cc53..73c493e0 100644 --- a/modules/default/weather/weather.js +++ b/modules/default/weather/weather.js @@ -45,7 +45,7 @@ Module.register("weather", { apiKey: "", apiSecret: "", apiVersion: "2.5", - apiBase: "https://api.openweathermap.org/data/", + apiBase: "https://api.openweathermap.org/data/", // TODO: this should not be part of the weather.js file, but should be contained in the openweatherprovider weatherEndpoint: "/weather", appendLocationNameToHeader: true, From 9f5e1b59fb41daf82a9a59bcbbc4e15dddae23d1 Mon Sep 17 00:00:00 2001 From: rejas Date: Sat, 4 Jul 2020 22:02:39 +0200 Subject: [PATCH 10/14] Set logLevel after loading config --- js/app.js | 2 ++ js/logger.js | 16 +++++++++------- js/main.js | 3 +++ 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/js/app.js b/js/app.js index 7cf7dd2e..b1fcc9bb 100644 --- a/js/app.js +++ b/js/app.js @@ -202,6 +202,8 @@ var App = function () { loadConfig(function (c) { config = c; + Log.setLogLevel(config.logLevel); + var modules = []; for (var m in config.modules) { diff --git a/js/logger.js b/js/logger.js index 157420a7..122ba81a 100644 --- a/js/logger.js +++ b/js/logger.js @@ -32,13 +32,15 @@ timeStamp: Function.prototype.bind.call(console.timeStamp, console) }; - if (config && config.logLevel) { - Object.keys(logLevel).forEach(function (key, index) { - if (!config.logLevel.includes(key.toLocaleUpperCase())) { - logLevel[key] = function () {}; - } - }); - } + logLevel.setLogLevel = function (newLevel) { + if (newLevel) { + Object.keys(logLevel).forEach(function (key, index) { + if (!newLevel.includes(key.toLocaleUpperCase())) { + logLevel[key] = function () {}; + } + }); + } + }; return logLevel; }); diff --git a/js/main.js b/js/main.js index 07459f0f..dc1667af 100644 --- a/js/main.js +++ b/js/main.js @@ -477,6 +477,9 @@ var MM = (function () { init: function () { Log.info("Initializing MagicMirror."); loadConfig(); + + Log.setLogLevel(config.logLevel); + Translator.loadCoreTranslations(config.language); Loader.loadModules(); }, From 121e7db3309694916ab867c29af426e215d759a1 Mon Sep 17 00:00:00 2001 From: rejas Date: Sat, 4 Jul 2020 22:03:13 +0200 Subject: [PATCH 11/14] Add CHANGELOG entry --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 11bfedd6..9fa43e6b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,6 +21,7 @@ _This release is scheduled to be released on 2020-10-01._ - Fix the use of "maxNumberOfDays" in the module "weatherforecast depending on the endpoint (forecast/daily or forecast)". [#2018](https://github.com/MichMich/MagicMirror/issues/2018) - Fix calendar display. Account for current timezone. [#2068](https://github.com/MichMich/MagicMirror/issues/2068) +- Fix logLevel being set before loading config ## [2.12.0] - 2020-07-01 From 309a18e9c0d748328fbb11d29fb2ecaca2809cd4 Mon Sep 17 00:00:00 2001 From: chamakura Date: Sat, 4 Jul 2020 20:12:34 -0700 Subject: [PATCH 12/14] Fixing double conversion of time between UTC and local timezone --- modules/default/calendar/calendar.js | 5 ----- modules/default/calendar/calendarfetcher.js | 10 ++++++---- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/modules/default/calendar/calendar.js b/modules/default/calendar/calendar.js index d18132a6..5c6ce453 100755 --- a/modules/default/calendar/calendar.js +++ b/modules/default/calendar/calendar.js @@ -468,11 +468,6 @@ Module.register("calendar", { for (var e in calendar) { var event = JSON.parse(JSON.stringify(calendar[e])); // clone object - // correct data for the current timezone - var offset = -(new Date().getTimezoneOffset() * 60 * 1000); - event.startDate = event.startDate - offset; - event.endDate = event.endDate - offset; - if (event.endDate < now) { continue; } diff --git a/modules/default/calendar/calendarfetcher.js b/modules/default/calendar/calendarfetcher.js index 4a6fb0e6..3676b5a8 100644 --- a/modules/default/calendar/calendarfetcher.js +++ b/modules/default/calendar/calendarfetcher.js @@ -186,10 +186,12 @@ const CalendarFetcher = function (url, reloadInterval, excludedEvents, maximumNu // kblankenship1989 - to fix issue #1798, converting all dates to locale time first, then converting back to UTC time const pastLocal = pastMoment.subtract(past.getTimezoneOffset(), "minutes").toDate(); const futureLocal = futureMoment.subtract(future.getTimezoneOffset(), "minutes").toDate(); - const datesLocal = rule.between(pastLocal, futureLocal, true, limitFunction); - const dates = datesLocal.map(function (dateLocal) { - return moment(dateLocal).add(dateLocal.getTimezoneOffset(), "minutes").toDate(); - }); + const dates = rule.between(pastLocal, futureLocal, true, limitFunction); + if (getTitleFromEvent(event).search("Manageando") > -1) { + console.log(startDate); + console.log(event); + console.log(rule); + } // The "dates" array contains the set of dates within our desired date range range that are valid // for the recurrence rule. *However*, it's possible for us to have a specific recurrence that From d021c9b4ae242c4fc53ffafbe92db098b9710b31 Mon Sep 17 00:00:00 2001 From: chamakura Date: Sat, 4 Jul 2020 20:23:09 -0700 Subject: [PATCH 13/14] Removing debug log statements --- modules/default/calendar/calendarfetcher.js | 5 ----- 1 file changed, 5 deletions(-) diff --git a/modules/default/calendar/calendarfetcher.js b/modules/default/calendar/calendarfetcher.js index 3676b5a8..acae13dc 100644 --- a/modules/default/calendar/calendarfetcher.js +++ b/modules/default/calendar/calendarfetcher.js @@ -187,11 +187,6 @@ const CalendarFetcher = function (url, reloadInterval, excludedEvents, maximumNu const pastLocal = pastMoment.subtract(past.getTimezoneOffset(), "minutes").toDate(); const futureLocal = futureMoment.subtract(future.getTimezoneOffset(), "minutes").toDate(); const dates = rule.between(pastLocal, futureLocal, true, limitFunction); - if (getTitleFromEvent(event).search("Manageando") > -1) { - console.log(startDate); - console.log(event); - console.log(rule); - } // The "dates" array contains the set of dates within our desired date range range that are valid // for the recurrence rule. *However*, it's possible for us to have a specific recurrence that From 921932920d6d5d0cbd4e64bf0614c11a02a84467 Mon Sep 17 00:00:00 2001 From: rejas Date: Sun, 5 Jul 2020 11:58:37 +0200 Subject: [PATCH 14/14] Fix incorrect namespace links in svg clockfaces Fixes #2072 --- CHANGELOG.md | 3 ++- modules/default/clock/faces/face-001.svg | 2 +- modules/default/clock/faces/face-002.svg | 2 +- modules/default/clock/faces/face-003.svg | 2 +- modules/default/clock/faces/face-004.svg | 2 +- modules/default/clock/faces/face-005.svg | 2 +- modules/default/clock/faces/face-006.svg | 2 +- modules/default/clock/faces/face-007.svg | 2 +- modules/default/clock/faces/face-008.svg | 2 +- modules/default/clock/faces/face-009.svg | 2 +- modules/default/clock/faces/face-010.svg | 2 +- modules/default/clock/faces/face-011.svg | 2 +- modules/default/clock/faces/face-012.svg | 2 +- 13 files changed, 14 insertions(+), 13 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9fa43e6b..7d5bc9b4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,7 +21,8 @@ _This release is scheduled to be released on 2020-10-01._ - Fix the use of "maxNumberOfDays" in the module "weatherforecast depending on the endpoint (forecast/daily or forecast)". [#2018](https://github.com/MichMich/MagicMirror/issues/2018) - Fix calendar display. Account for current timezone. [#2068](https://github.com/MichMich/MagicMirror/issues/2068) -- Fix logLevel being set before loading config +- Fix logLevel being set before loading config. +- Fix incorrect namespace links in svg clockfaces. [#2072](https://github.com/MichMich/MagicMirror/issues/2072) ## [2.12.0] - 2020-07-01 diff --git a/modules/default/clock/faces/face-001.svg b/modules/default/clock/faces/face-001.svg index 13436c76..abd08ce7 100644 --- a/modules/default/clock/faces/face-001.svg +++ b/modules/default/clock/faces/face-001.svg @@ -1 +1 @@ -face-001 +face-001 diff --git a/modules/default/clock/faces/face-002.svg b/modules/default/clock/faces/face-002.svg index a3ee3682..1ec31049 100644 --- a/modules/default/clock/faces/face-002.svg +++ b/modules/default/clock/faces/face-002.svg @@ -1 +1 @@ -face-002 +face-002 diff --git a/modules/default/clock/faces/face-003.svg b/modules/default/clock/faces/face-003.svg index d3fc32de..7cfeebac 100644 --- a/modules/default/clock/faces/face-003.svg +++ b/modules/default/clock/faces/face-003.svg @@ -1 +1 @@ -face-003 +face-003 diff --git a/modules/default/clock/faces/face-004.svg b/modules/default/clock/faces/face-004.svg index 140955d7..bc97588c 100644 --- a/modules/default/clock/faces/face-004.svg +++ b/modules/default/clock/faces/face-004.svg @@ -1 +1 @@ -face-004 +face-004 diff --git a/modules/default/clock/faces/face-005.svg b/modules/default/clock/faces/face-005.svg index fb52a435..0bc1b430 100644 --- a/modules/default/clock/faces/face-005.svg +++ b/modules/default/clock/faces/face-005.svg @@ -1 +1 @@ -faces +faces diff --git a/modules/default/clock/faces/face-006.svg b/modules/default/clock/faces/face-006.svg index a9eff826..87c52ed5 100644 --- a/modules/default/clock/faces/face-006.svg +++ b/modules/default/clock/faces/face-006.svg @@ -1 +1 @@ -face-006 +face-006 diff --git a/modules/default/clock/faces/face-007.svg b/modules/default/clock/faces/face-007.svg index b0dde834..e557f55f 100644 --- a/modules/default/clock/faces/face-007.svg +++ b/modules/default/clock/faces/face-007.svg @@ -1 +1 @@ -face-007 +face-007 diff --git a/modules/default/clock/faces/face-008.svg b/modules/default/clock/faces/face-008.svg index 551ea7df..6fadb396 100644 --- a/modules/default/clock/faces/face-008.svg +++ b/modules/default/clock/faces/face-008.svg @@ -1 +1 @@ -face-008 +face-008 diff --git a/modules/default/clock/faces/face-009.svg b/modules/default/clock/faces/face-009.svg index cd3720f2..bd207e09 100644 --- a/modules/default/clock/faces/face-009.svg +++ b/modules/default/clock/faces/face-009.svg @@ -1 +1 @@ -face-009 +face-009 diff --git a/modules/default/clock/faces/face-010.svg b/modules/default/clock/faces/face-010.svg index d0af3acb..8c5e5848 100644 --- a/modules/default/clock/faces/face-010.svg +++ b/modules/default/clock/faces/face-010.svg @@ -1 +1 @@ -face-010 +face-010 diff --git a/modules/default/clock/faces/face-011.svg b/modules/default/clock/faces/face-011.svg index 2d5f27ba..9886fed5 100644 --- a/modules/default/clock/faces/face-011.svg +++ b/modules/default/clock/faces/face-011.svg @@ -1 +1 @@ -face-011 +face-011 diff --git a/modules/default/clock/faces/face-012.svg b/modules/default/clock/faces/face-012.svg index 8096d492..cfd80698 100644 --- a/modules/default/clock/faces/face-012.svg +++ b/modules/default/clock/faces/face-012.svg @@ -1 +1 @@ -face-012 +face-012