UX: Label-Feld aus Provider-Formular entfernen

Problem: Das 'Bezeichnung für Kunden-E-Mails'-Feld (UI-Label) war irreführend.
Ein User hat dort die Domain 'stressfrei-meyer.xyz' eingetragen statt ins
Domain-Feld – das eigentliche Domain-Feld blieb unverändert, und das Label
zeigte dann unpassend die Domain-Schreibweise.

Fix: Das Label-Feld ist in 99% aller Fälle nicht nötig, weil es automatisch
aus der Domain abgeleitet wird (stressfrei-wechseln.de → Stressfrei-Wechseln).
Der Edge-Case 'komplett anderer Anzeigetext als aus Domain ableitbar' kommt
selten vor und kann später bei Bedarf über direkten DB-Zugriff/Developer-Panel
gesetzt werden.

Das Schema-Feld bleibt erhalten (für zukünftige Erweiterungen), nur das
Formular-Feld ist weg. Stattdessen Hinweistext unter dem Domain-Feld:
'Wird auch für die Kunden-E-Mail-Adressen genutzt (z.B. name@...)'

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
duffyduck 2026-04-23 16:00:41 +02:00
parent b7d3654b72
commit 3fa1dce2dc
1 changed files with 2 additions and 12 deletions

View File

@ -39,8 +39,6 @@ interface ProviderFormData {
// System-E-Mail
systemEmailAddress: string;
systemEmailPassword: string;
// UI-Label für Kunden-E-Mail-Adressen
customerEmailLabel: string;
isActive: boolean;
isDefault: boolean;
}
@ -59,7 +57,6 @@ const emptyForm: ProviderFormData = {
allowSelfSignedCerts: false,
systemEmailAddress: '',
systemEmailPassword: '',
customerEmailLabel: '',
isActive: true,
isDefault: false,
};
@ -149,7 +146,6 @@ export default function EmailProviders() {
allowSelfSignedCerts: config.allowSelfSignedCerts ?? false,
systemEmailAddress: config.systemEmailAddress || '',
systemEmailPassword: '', // Passwort wird nicht geladen
customerEmailLabel: config.customerEmailLabel || '',
isActive: config.isActive,
isDefault: config.isDefault,
});
@ -297,7 +293,6 @@ export default function EmailProviders() {
smtpEncryption: formData.smtpEncryption,
allowSelfSignedCerts: formData.allowSelfSignedCerts,
systemEmailAddress: formData.systemEmailAddress,
customerEmailLabel: formData.customerEmailLabel?.trim() || null,
isActive: formData.isActive,
isDefault: formData.isDefault,
};
@ -572,14 +567,9 @@ export default function EmailProviders() {
)}
</div>
<Input
label="Bezeichnung für Kunden-E-Mails (UI-Label)"
value={formData.customerEmailLabel}
onChange={(e) => setFormData({ ...formData, customerEmailLabel: e.target.value })}
placeholder={`wird aus Domain abgeleitet, z.B. "${formData.domain ? formData.domain.split('.')[0].split('-').map(s => s.charAt(0).toUpperCase() + s.slice(1)).join('-') : 'Stressfrei-Wechseln'}"`}
/>
<p className="text-xs text-gray-500 -mt-2">
Wird überall dort angezeigt, wo es bisher "Stressfrei-Wechseln" hieß (z.B. Tab-Name, Adress-Listen). Wenn leer, wird der Name aus der Domain abgeleitet.
Wird auch für die Kunden-E-Mail-Adressen genutzt (z.B. <code>name@{formData.domain || 'meine-domain.de'}</code>)
und als Bezeichnung im UI angezeigt ("{formData.domain ? formData.domain.split('.')[0].split('-').map(s => s.charAt(0).toUpperCase() + s.slice(1)).join('-') : 'Meine-Domain'}").
</p>
<Input