feat(emails): zweisprachige E-Mail-Templates + Notification-Texte org-relativ

- email_utils/templates.magic_link_login_email + incident_notification_email
  nehmen jetzt lang Parameter (de | en).
- routers/auth.request_magic_link zieht Sprache aus der Org des Users und
  uebergibt sie ans Template.
- agents/orchestrator._send_email_notifications_for_incident lokalisiert
  ebenfalls und gibt lang an incident_notification_email durch.
- DB-Notification-Texte (refresh_summary, new_articles) sind in der
  Pipeline org-sprach-relativ (englische Variante: "3 new articles", etc.).
  Status-Change-Notifications: Codes (confirmed/contradicted) bleiben, FE
  uebersetzt sie in Phase 6.

Phase 5 von 8 (eng_demo / Org-Sprache).
Dieser Commit ist enthalten in:
Claude Code
2026-05-13 21:08:32 +00:00
Ursprung a2d4c77813
Commit 4e51834163
3 geänderte Dateien mit 93 neuen und 27 gelöschten Zeilen

Datei anzeigen

@@ -96,9 +96,11 @@ async def request_magic_link(
)
await db.commit()
# E-Mail senden
# E-Mail senden -- Sprache aus Org-Settings des Users
link = f"{MAGIC_LINK_BASE_URL}/?token={token}"
subject, html = magic_link_login_email(user["email"].split("@")[0], link)
from services.org_settings import get_org_language
org_lang_iso = await get_org_language(db, user["organization_id"])
subject, html = magic_link_login_email(user["email"].split("@")[0], link, lang=org_lang_iso)
await send_email(email, subject, html)
magic_link_limiter.record(email, ip)