From 0d761259cd6486ac00c789cd64157b25995282a5 Mon Sep 17 00:00:00 2001 From: CeruleanSky Date: Sat, 4 Jun 2022 08:50:01 -0400 Subject: [PATCH] Use dateutil.paraser isoparse Use dateutil.paraser isoparse to handle all the types of rfc3339 time that gotify might and will serve --- gotify_tray/gotify/models.py | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/gotify_tray/gotify/models.py b/gotify_tray/gotify/models.py index 4a98c3b..36064f3 100644 --- a/gotify_tray/gotify/models.py +++ b/gotify_tray/gotify/models.py @@ -1,4 +1,5 @@ import datetime +from dateutil.parser import isoparse import logging from typing import List, Optional @@ -47,15 +48,8 @@ class GotifyMessageModel(AttributeDict): title: Optional[str] = None def __init__(self, d: dict, *args, **kwargs): - s = ( - d["date"].split(".")[0] # date - + "." - + d["date"].split(".")[1][:6] # ms - + "+" - + d["date"].split("+")[-1] # timezone - ) d.update( - {"date": datetime.datetime.fromisoformat(s).astimezone(local_timezone)} + {"date": isoparse(d["date"]).astimezone(local_timezone)} ) super(GotifyMessageModel, self).__init__(d, *args, **kwargs)