{% extends 'admin/shell.html.twig' %} {% set nav = 'mail' %} {% block title %}E-Mail-Versand{% endblock %} {% block heading %}E-Mail-Versand{% endblock %} {% block lead %}Wie Formulare ihre Mails verschicken – ausprobieren, speichern und sehen, woran es hakt.{% endblock %} {% block content %} {# E-Mail-Versand (ADR 121, 122): Weg wählen und ausprobieren, alle Wege des Servers testen, speichern - und die letzten Versuche mit Ursache. Das SMTP-Passwort steht nie im Formular. #} {% set f = mailForm ?? {} %} {% set e = mail.einstellung %} {% set weg = f.weg ?? e.weg %}

Versandweg

gilt für alle Formulare
Eingestellt
{% if mail.gueltig %} {{ mail.art }}{% if mail.ziel %} {{ mail.ziel }}{% endif %}{% if mail.benutzer %} · angemeldet als {{ mail.benutzer }}{% endif %} {% else %} Die Einstellung ist ungültig. {% endif %}
Gespeichert in {{ mail.quelle }} als MAILER_DSN.{% if mail.quelle != '.env' %} Sie hat dort Vorrang; speichern lässt sich hier nichts, testen schon.{% endif %}
{% if mailNotice %}

{{ mailNotice.text }}

{% endif %} {% if mailResult %}

{{ mailResult.ok ? 'Testmail an ' ~ mailResult.an ~ ' vom Mailserver angenommen' : 'Testmail an ' ~ mailResult.an ~ ' nicht versendet' }}{% if mailResult.weg is defined %} ({{ mailResult.weg }}){% endif %}.{% if not mailResult.ok %} {{ mailResult.meldung }}{% endif %}

{% if mailResult.hinweis %}

{{ mailResult.hinweis }}

{% endif %} {% if mailResult.dialog %}
Antworten des Mailservers
{{ mailResult.dialog }}
{% endif %}
{% endif %} {% if mailResults %}

Alle Wege ausprobiert – an {{ (f.an ?? '') }}. Was angenommen wurde, kann gespeichert werden; angekommen ist es damit noch nicht, bitte im Postfach nachsehen.

    {% for r in mailResults %}
  • {{ r.ok ? 'Angenommen' : 'Fehlgeschlagen' }} · {{ r.weg }} {% if not r.ok %}
    {{ r.meldung }}{% if r.hinweis %}
    {{ r.hinweis }}{% endif %}{% endif %}
  • {% endfor %}
{% endif %}
Versandweg {% for key, w in mail.wege %} {% endfor %}
SMTP

587 mit STARTTLS ist üblich (IONOS, Microsoft 365: smtp.office365.com), 465 verschlüsselt von Anfang an. Das Passwort wird nie angezeigt und landet nur in .env.

Testmail

Derselbe Absender wie bei den Formularen. Über den Server (mail(), sendmail) muss er zu einer eigenen Domain beim Hoster gehören, bei SMTP ist es meist das angemeldete Postfach.

{% if mail.quelle == '.env' %}{% endif %}

„Alle Wege testen“ schickt je Weg eine Testmail – bis zu vier. Gespeichert wird {{ mail.quelle == '.env' ? 'nur mit „Diesen Weg speichern“' : 'hier nichts, weil MAILER_DSN in der Server-Umgebung steht' }}.

Letzte Versuche

var/log/mail.log
{% if mail.protokoll is empty %}

Noch nichts versendet – weder Testmail noch Formular.

{% else %} {% endif %}

KantSites · Arbeitsstand

{% endblock %}