[HCAW] Added random language date
This commit is contained in:
+17
-2
@@ -27,6 +27,9 @@ from collections import defaultdict
|
|||||||
from email.mime.multipart import MIMEMultipart
|
from email.mime.multipart import MIMEMultipart
|
||||||
from email.mime.text import MIMEText
|
from email.mime.text import MIMEText
|
||||||
from imap_utils import list_folders, quote_mailbox
|
from imap_utils import list_folders, quote_mailbox
|
||||||
|
from babel.dates import format_date
|
||||||
|
import babel
|
||||||
|
import random
|
||||||
|
|
||||||
# Mappen die NIET in het overzicht komen (systeem + inbox zelf)
|
# Mappen die NIET in het overzicht komen (systeem + inbox zelf)
|
||||||
UITSLUITINGEN = {
|
UITSLUITINGEN = {
|
||||||
@@ -117,6 +120,16 @@ def fetch_body(data) -> bytes | None:
|
|||||||
return item[1]
|
return item[1]
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
def invalid_locale(code):
|
||||||
|
return babel.Locale(code).language_name is None
|
||||||
|
|
||||||
|
def get_random_locale() -> (str, str, str):
|
||||||
|
"""Return the locale code, the local name and the english name of a language."""
|
||||||
|
all_ids = babel.localedata.locale_identifiers()
|
||||||
|
code = all_ids[random.randrange(0, len(all_ids))]
|
||||||
|
while (invalid_locale(code)):
|
||||||
|
code = all_ids[random.randrange(0, len(all_ids))]
|
||||||
|
return (code, babel.Locale(code).language_name, babel.Locale(code).english_name)
|
||||||
|
|
||||||
# ── IMAP ophalen ──────────────────────────────────────────────────────────────
|
# ── IMAP ophalen ──────────────────────────────────────────────────────────────
|
||||||
|
|
||||||
@@ -253,9 +266,11 @@ def bouw_html(berichten: dict[str, list[dict]], zoekdatum: date) -> str:
|
|||||||
# ── e-mail versturen ──────────────────────────────────────────────────────────
|
# ── e-mail versturen ──────────────────────────────────────────────────────────
|
||||||
|
|
||||||
def stuur_overzicht(html: str, zoekdatum: date, config: dict):
|
def stuur_overzicht(html: str, zoekdatum: date, config: dict):
|
||||||
datum_nl = zoekdatum.strftime("%-d %B %Y")
|
datum_nl = format_date(zoekdatum, "EEEE d MMMM yyyy", locale="nl") # zoekdatum.strftime("%-d %B %Y")
|
||||||
|
random_locale, random_lang, random_elang = get_random_locale()
|
||||||
|
datum_bl = format_date(zoekdatum, locale=random_locale)
|
||||||
msg = MIMEMultipart("alternative")
|
msg = MIMEMultipart("alternative")
|
||||||
msg["Subject"] = f"Mailbak {datum_nl}"
|
msg["Subject"] = f"Mailoverzicht van {datum_bl} ({random_lang} - {random_elang}) of {datum_nl}"
|
||||||
msg["From"] = config["from"]
|
msg["From"] = config["from"]
|
||||||
msg["To"] = config["to"]
|
msg["To"] = config["to"]
|
||||||
msg.attach(MIMEText(html, "html", "utf-8"))
|
msg.attach(MIMEText(html, "html", "utf-8"))
|
||||||
|
|||||||
Reference in New Issue
Block a user