From 6c70830ab60b7afe131480bf7226c6d1ae4145f3 Mon Sep 17 00:00:00 2001 From: Johannes <29555657+joBr99@users.noreply.github.com> Date: Mon, 13 Feb 2023 19:17:33 +0100 Subject: [PATCH] implement #746 --- apps/nspanel-lovelace-ui/luibackend/config.py | 1 + apps/nspanel-lovelace-ui/luibackend/controller.py | 4 ---- apps/nspanel-lovelace-ui/luibackend/pages.py | 8 ++++++++ 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/apps/nspanel-lovelace-ui/luibackend/config.py b/apps/nspanel-lovelace-ui/luibackend/config.py index b4cf4553..60321637 100644 --- a/apps/nspanel-lovelace-ui/luibackend/config.py +++ b/apps/nspanel-lovelace-ui/luibackend/config.py @@ -25,6 +25,7 @@ class Entity(object): self.assumedState = entity_input_config.get("assumed_state", False) self.stype = entity_input_config.get("type") self.value = entity_input_config.get("value") + self.sleepTimeout = entity_input_config.get("sleepTimeout") self.data = entity_input_config.get("data", {}) self.entity_input_config = entity_input_config diff --git a/apps/nspanel-lovelace-ui/luibackend/controller.py b/apps/nspanel-lovelace-ui/luibackend/controller.py index 5f153940..13015f6b 100644 --- a/apps/nspanel-lovelace-ui/luibackend/controller.py +++ b/apps/nspanel-lovelace-ui/luibackend/controller.py @@ -32,10 +32,6 @@ class LuiController(object): # send time and date on startup self._pages_gen.update_time("") self._pages_gen.update_date("") - - # set screensaver timeout - timeout = self._config.get("sleepTimeout") - self._send_mqtt_msg(f"timeout~{timeout}") # set current screensaver brightness self.update_screensaver_brightness(kwargs={"ssbr": self.current_screensaver_brightness, "sbr": self.current_screen_brightness}) diff --git a/apps/nspanel-lovelace-ui/luibackend/pages.py b/apps/nspanel-lovelace-ui/luibackend/pages.py index 434a760f..c0f1403f 100644 --- a/apps/nspanel-lovelace-ui/luibackend/pages.py +++ b/apps/nspanel-lovelace-ui/luibackend/pages.py @@ -705,6 +705,10 @@ class LuiPagesGen(object): # Switch to page if send_page_type: self.page_type(card.cardType) + + # send sleep timeout if there is one configured for the current card + if card.sleepTimeout is not None: + self._send_mqtt_msg(f"timeout~{card.sleepTimeout}") temp_unit = card.raw_config.get("temperatureUnit", "celsius") if card.cardType in ["cardEntities", "cardGrid"]: @@ -734,6 +738,10 @@ class LuiPagesGen(object): theme = card.raw_config.get("theme") self.update_screensaver_weather(theme) self.update_status_icons() + + # set screensaver timeout + timeout = self._config.get("sleepTimeout") + self._send_mqtt_msg(f"timeout~{timeout}") return if card.cardType == "cardQR": qrcode = card.raw_config.get("qrCode", "")