basically refactored the email viewer

This commit is contained in:
Tim Bendt
2025-05-14 15:11:24 -06:00
parent 5c9ad69309
commit fc57e201a2
20 changed files with 1348 additions and 575 deletions

View File

@@ -1,4 +1,4 @@
from datetime import datetime, timedelta
from datetime import UTC, datetime, timedelta
import re
from typing import List, Dict
@@ -6,7 +6,7 @@ from typing import List, Dict
def group_envelopes_by_date(envelopes: List[Dict]) -> List[Dict]:
"""Group envelopes by date and add headers for each group."""
grouped_envelopes = []
today = datetime.now()
today = datetime.now().astimezone(UTC)
yesterday = today - timedelta(days=1)
start_of_week = today - timedelta(days=today.weekday())
start_of_last_week = start_of_week - timedelta(weeks=1)
@@ -32,7 +32,7 @@ def group_envelopes_by_date(envelopes: List[Dict]) -> List[Dict]:
current_group = None
for envelope in envelopes:
envelope_date = re.sub(r"[\+\-]\d\d:\d\d", "", envelope["date"])
envelope_date = datetime.strptime(envelope_date, "%Y-%m-%d %H:%M")
envelope_date = datetime.strptime(envelope_date, "%Y-%m-%d %H:%M").astimezone(UTC)
group_label = get_group_label(envelope_date)
if group_label != current_group:
grouped_envelopes.append({"type": "header", "label": group_label})