if max_interval not in ["years", "days"]:
raise ValueError
- now = datetime.now(timezone.utc)
- if time[-1] == 'Z': # Convert Zulu time zone to datetime compatible format
- time = time[0:-1] + '+00:00'
- diff = now - datetime.fromisoformat(time)
+ diff = datetime.now(timezone.utc) - time
second_diff = diff.seconds
day_diff = diff.days
import sqlite3
import os
+from datetime import datetime
dbdir = os.path.dirname(__file__)
dbdef = os.path.join(dbdir, "coffee_db.sql")
+ " and ".join(clauses) + " group by fl.type "
"order by fl.ord asc", args))
+def sqlite_timestring_to_datetime(timestring):
+ if timestring[-1] == 'Z': # Convert Zulu time zone to datetime compatible format
+ timestring = timestring[0:-1] + '+00:00'
+ return datetime.fromisoformat(timestring)
def last_events():
"""Return mapping with event names as keys and SQLite time string of
the last event as values.
"""
conn, c = open_db()
- res = dict(c.execute("""select name, MAX(time)
- from events as e left join event_types as et on e.event_type = et.id
- group by name"""))
+ res = {}
+ for name, time in c.execute("""select name, MAX(time)
+ from events as e left join event_types as et on e.event_type = et.id
+ group by name"""):
+ res[name] = sqlite_timestring_to_datetime(time)
+
close_db(conn)
return res