From 63f258991c71573194cfb183b635b3a35aac70d1 Mon Sep 17 00:00:00 2001 From: Johnny JTH Date: Fri, 9 Feb 2024 12:09:34 +0000 Subject: [PATCH] Ensure timezone is applied to every datetime --- custom_components/bedste_lectio/sensor.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/custom_components/bedste_lectio/sensor.py b/custom_components/bedste_lectio/sensor.py index 0e06d6a..1e5b941 100644 --- a/custom_components/bedste_lectio/sensor.py +++ b/custom_components/bedste_lectio/sensor.py @@ -1,6 +1,6 @@ """Sensor platforms for BedsteLectio.""" from __future__ import annotations -from datetime import datetime +from datetime import datetime, timedelta from zoneinfo import ZoneInfo from dateutil import parser @@ -45,7 +45,7 @@ def get_next_room(entries: list[dict[str, str]]) -> dict[str, str]: rooms = [] for entry in entries: date = parser.parse(entry["tidspunkt"].split(" til")[0], fuzzy=True).replace(tzinfo=ZoneInfo("Europe/Copenhagen")) - if date < datetime.now(tz=ZoneInfo("Europe/Copenhagen")): + if date < datetime.now().astimezone(ZoneInfo("Europe/Copenhagen")): continue rooms.append({ @@ -84,6 +84,6 @@ def extra_state_attributes(self) -> dict[str, any]: entries = self.coordinator.data.get("skema") data = get_next_room(entries) data.update({ - "last_update": datetime.now(tz=ZoneInfo("Europe/Copenhagen")), + "last_update": datetime.now().astimezone(ZoneInfo("Europe/Copenhagen")), }) return data