From 8e808be8c81a9264a3a5a6985a5b44df1053f6ce Mon Sep 17 00:00:00 2001 From: Severga <66136019+Severga@users.noreply.github.com> Date: Wed, 18 Sep 2024 21:10:35 +0300 Subject: [PATCH] nightlight@Severga: Fix bug with state switch in auto mode (#6433) --- .../files/nightlight@Severga/applet.js | 21 +++++++------------ 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/nightlight@Severga/files/nightlight@Severga/applet.js b/nightlight@Severga/files/nightlight@Severga/applet.js index 2bc35e4467d..f48cde309c9 100644 --- a/nightlight@Severga/files/nightlight@Severga/applet.js +++ b/nightlight@Severga/files/nightlight@Severga/applet.js @@ -92,21 +92,16 @@ NightLightApplet.prototype = { }, _check_time: function() { - let now = Date.now(); - let start = new Date(); - start.setHours(this.startH); - start.setMinutes(this.startM); - start.setSeconds(0); - let end; - if ((this.endH * 60 + this.endM) >= (this.startH * 60 + this.startM)) { - end = new Date(); + let start = this.startH * 3600 + this.startM * 60; + let end = this.endH * 3600 + this.endM * 60; + let now = new Date(); now = now.getHours() * 3600 + now.getMinutes() * 60 + now.getSeconds(); + let on = false; + if (start <= end) { + if (now >= start && now < end) on = true; } else { - end = new Date (now + 86400000); + if ((now >= start && now < 86400) || (now >= 0 && now < end)) on = true; } - end.setHours(this.endH); - end.setMinutes(this.endM); - end.setSeconds(0); - if (now >= start && now < end) { + if (on) { this.autoAndOn = true; this._turn_on(); } else {