changes to the sceduler for the test version with the right processing
This commit is contained in:
@@ -181,6 +181,55 @@ def send_register_token(email: str, token: str) -> bool:
|
||||
|
||||
return send(email, subject, text_body=text_note, html_body=html_note)
|
||||
|
||||
|
||||
def send_trial_notification(
|
||||
recipient: str,
|
||||
event: str,
|
||||
domain: str,
|
||||
school_name: str,
|
||||
expires_at: str = "",
|
||||
upgrade_url: str = "https://invario-software.de/preise",
|
||||
) -> bool:
|
||||
"""Send a lifecycle notification for a trial tenant."""
|
||||
messages = {
|
||||
"started": (
|
||||
"Ihre 14-tägige Invario-Testversion ist aktiv.",
|
||||
"Ihre Testversion wurde aktiviert. Alle Module sind für 14 Tage freigeschaltet.",
|
||||
),
|
||||
"reminder": (
|
||||
"Ihre Invario-Testversion endet bald.",
|
||||
"Ihre Testversion endet in Kürze. Sie können jetzt auf eine reguläre Lizenz upgraden.",
|
||||
),
|
||||
"expired": (
|
||||
"Ihre Invario-Testversion ist abgelaufen.",
|
||||
"Die 14-tägige Testversion ist abgelaufen und die Module wurden deaktiviert.",
|
||||
),
|
||||
"deleted": (
|
||||
"Ihre Invario-Testdaten wurden gelöscht.",
|
||||
"Die Testdaten wurden 30 Tage nach Ablauf der Testversion endgültig gelöscht.",
|
||||
),
|
||||
}
|
||||
subject, message = messages.get(event, ("Information zu Ihrer Invario-Testversion", "Es gibt eine Aktualisierung zu Ihrer Testversion."))
|
||||
expiry_note = f"\nAblaufdatum: {expires_at}" if expires_at else ""
|
||||
text_body = (
|
||||
f"Guten Tag,\n\n{message}\n\n"
|
||||
f"Schule: {school_name}\nAdresse: https://{domain}{expiry_note}\n\n"
|
||||
f"Upgrade: {upgrade_url}\n\n"
|
||||
"Bitte sichern Sie Ihre Daten vor Ablauf bzw. Löschung der Testversion."
|
||||
)
|
||||
html_body = f"""
|
||||
<div style="font-family: Arial, Helvetica, sans-serif; color: #333333;">
|
||||
<h2 style="color: #2c3e50;">{subject}</h2>
|
||||
<p>{message}</p>
|
||||
<p><strong>Schule:</strong> {school_name}<br>
|
||||
<strong>Adresse:</strong> <a href="https://{domain}">https://{domain}</a><br>
|
||||
<strong>Ablaufdatum:</strong> {expires_at or "-"}</p>
|
||||
<p><a href="{upgrade_url}">Jetzt auf eine reguläre Lizenz upgraden</a></p>
|
||||
<p style="color: #64748b;">Bitte sichern Sie Ihre Daten vor Ablauf bzw. Löschung der Testversion.</p>
|
||||
</div>
|
||||
"""
|
||||
return send(recipient, subject, text_body=text_body, html_body=html_body)
|
||||
|
||||
def send_password_reset_token(email: str, token: str) -> bool:
|
||||
"""Sends a professionally styled password reset token to the user."""
|
||||
subject = "Aktion erforderlich: Ihr Passwort-Zurücksetzungs-Code für Invario"
|
||||
|
||||
Reference in New Issue
Block a user