diff --git a/app/stiftung/views/system.py b/app/stiftung/views/system.py index e28f5d1..8f18da3 100644 --- a/app/stiftung/views/system.py +++ b/app/stiftung/views/system.py @@ -2042,7 +2042,7 @@ def email_settings(request): } elif action == "test_smtp_send": - from django.core.mail import EmailMessage, get_connection + from django.core.mail import EmailMultiAlternatives, get_connection from django.utils import timezone test_email = request.POST.get("test_email", "").strip() @@ -2079,19 +2079,43 @@ def email_settings(request): fail_silently=False, ) now = timezone.now().strftime("%d.%m.%Y %H:%M") - msg = EmailMessage( + text_body = ( + f"Dies ist eine Test-E-Mail der Stiftungsverwaltung.\n\n" + f"Zeitpunkt: {now}\n" + f"SMTP-Server: {host}:{port}\n" + f"Absender: {from_email}\n" + f"Gesendet von: {request.user.get_full_name() or request.user.username}\n\n" + f"Wenn Sie diese E-Mail erhalten, funktioniert der E-Mail-Versand korrekt." + ) + html_body = ( + '' + '
' + '
' + '

van Hees-Theyssen-Vogel\'sche Stiftung

' + '

SMTP-Test

' + '
' + '

Dies ist eine Test-E-Mail der Stiftungsverwaltung.

' + '
' + f'

Zeitpunkt: {now}

' + f'

SMTP-Server: {host}:{port}

' + f'

Absender: {from_email}

' + f'

Gesendet von: {request.user.get_full_name() or request.user.username}

' + '
' + '

✔ E-Mail-Versand funktioniert korrekt.

' + '
' + '
' + 'van Hees-Theyssen-Vogel\'sche Stiftung • Raesfelder Str. 3 • 46499 Hamminkeln
' + '
' + ) + msg = EmailMultiAlternatives( subject=f"[vHTV-Stiftung] SMTP-Test ({now})", - body=( - f"Dies ist eine Test-E-Mail der Stiftungsverwaltung.\n\n" - f"Zeitpunkt: {now}\n" - f"SMTP-Server: {host}:{port}\n" - f"Absender: {from_email}\n\n" - f"Wenn Sie diese E-Mail erhalten, funktioniert der E-Mail-Versand korrekt." - ), + body=text_body, from_email=from_email, to=[test_email], connection=connection, ) + msg.attach_alternative(html_body, "text/html") msg.send() test_result = { "success": True, diff --git a/app/templates/stiftung/email_settings.html b/app/templates/stiftung/email_settings.html index 52257a0..3c4a167 100644 --- a/app/templates/stiftung/email_settings.html +++ b/app/templates/stiftung/email_settings.html @@ -23,6 +23,46 @@ {% endif %} + +
+
+

+ + Test-E-Mail senden +

+
+
+

+ Sendet eine echte Test-E-Mail (HTML + Text) an die angegebene Adresse, um den vollständigen Versandweg zu prüfen. +

+
+ {% csrf_token %} +
+ + + {% if request.user.email %} + + {% endif %} +
+ {% if request.user.email %} +
Ihre Adresse: {{ request.user.email }}
+ {% else %} +
Kein E-Mail in Ihrem Benutzerprofil hinterlegt. Bitte Adresse manuell eingeben.
+ {% endif %} +
+
+
+
@@ -178,24 +218,6 @@
-
-
- -
Sendet eine echte Test-E-Mail an die angegebene Adresse, um den vollständigen Versandweg zu prüfen.
-
- - -
-