implement screensaver

This commit is contained in:
joBr99
2023-11-19 23:28:54 +01:00
parent 2a6643eb68
commit 067b2bd75a
3 changed files with 10 additions and 10 deletions

View File

@@ -258,17 +258,15 @@ class PowerCard(HACard):
result += f"~{speed}"
return result
class Screensaver(panel_cards.Card):
class Screensaver(HACard):
def __init__(self, locale, config, panel):
super().__init__(locale, config, panel)
if "entities" in config:
for e in config.get("entities"):
# print(e)
HAEntity(locale, e, panel)
# elif "entity" in config:
def render(self):
return ""
result = ""
for e in self.entities:
result += e.render(cardType=self.type)
return result[1:]
def card_factory(locale, settings, panel):

View File

@@ -28,3 +28,6 @@ def send_date(topic, date):
def entityUpd(topic, data):
custom_send(topic, f"entityUpd~{data}")
def weatherUpdate(topic, data):
custom_send(topic, f"weatherUpdate~{data}")

View File

@@ -113,15 +113,14 @@ class LovelaceUIPanel:
libs.panel_cmd.page_type(self.sendTopic, "screensaver")
self.current_card = Screensaver(
self.settings["locale"], self.settings["screensaver"], self)
libs.panel_cmd.entityUpd(
libs.panel_cmd.weatherUpdate(
self.sendTopic, self.current_card.render())
if msg[1] == "sleepReached":
self.privious_cards.append(self.current_card)
libs.panel_cmd.page_type(self.sendTopic, "screensaver")
self.current_card = Screensaver(
self.settings["locale"], self.settings["screensaver"], self)
libs.panel_cmd.entityUpd(
libs.panel_cmd.weatherUpdate(
self.sendTopic, self.current_card.render())
if msg[1] == "buttonPress2":
entity_id = msg[2]