fix(ui): echte Umlaute in allen sichtbaren Texten

Menüs, Dialoge, Schaltflächen, Platzhalter, Hinweise und die
Fehlermeldungen der API standen in Ersatzschreibweise (oe/ae/ue). Sie
erscheinen als Toast oder Beschriftung direkt in der Oberfläche und
gehören damit richtig geschrieben; sechs sichtbare Texte mit ss statt ß
sind gleich mit erledigt ("Schließen", "Straße", "zu groß").

Unangetastet bleibt bewusst:

- Kommentare im Quelltext - die sind durchgängig ASCII, und der Diff wäre
  dreimal so groß ohne Nutzen für den Benutzer
- Protokollzeilen (console.*) - die landen im journal, nicht in der App
- Datenbankwerte und interne Kennungen: 'uebernommen', 'empfaenger',
  'vorschlaege', 'laeuft-bereits' stecken in Enums, SQL und
  Zustandsvergleichen. Ein Umlaut darin hätte still falsche Ergebnisse
  geliefert
- server/src/mail/extract.js - die Muster decken absichtlich beide
  Schreibweisen ab: /gr(ü|ue)(ß|ss)e/
- scanner/utils/crypto.js - der Ersatzschlüssel darf sich nicht ändern,
  sonst sind gespeicherte Portal-Passwörter nicht mehr lesbar

Geprüft mit einem Rundgang durch die Ansichten und Dialoge: sichtbarer
Text plus title/aria-label/placeholder enthalten keine
Ersatzschreibweisen mehr.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Sascha Wolf
2026-08-11 09:37:24 +02:00
co-authored by Claude Opus 5
parent ea55acdb5c
commit 8b7ce448a6
42 changed files with 168 additions and 168 deletions
+3 -3
View File
@@ -586,7 +586,7 @@ export const LeadNetwork: React.FC<LeadNetworkProps> = ({
<button
onClick={() => setTransform((prev) => ({ ...prev, k: Math.min(prev.k * 1.25, MAX_ZOOM) }))}
className="rounded-xl border border-ink-200 bg-surface p-2.5 text-ink-600 shadow-card transition hover:text-brand-600"
title="Vergroessern"
title="Vergrößern"
>
<svg className="h-4 w-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M12 4v16m8-8H4" />
@@ -642,7 +642,7 @@ export const LeadNetwork: React.FC<LeadNetworkProps> = ({
Ersteller &rarr; Kontakt
</div>
<p className="mt-2 text-[9px] font-semibold uppercase tracking-wider text-ink-300">
Ziehen = verschieben · Rad = Zoom · Doppelklick = loesen
Ziehen = verschieben · Rad = Zoom · Doppelklick = lösen
</p>
</div>
@@ -912,7 +912,7 @@ export const LeadNetwork: React.FC<LeadNetworkProps> = ({
<dd className="truncate font-semibold text-ink-700">{selectedLead.created_by_name || '—'}</dd>
</div>
<div className="flex justify-between gap-2">
<dt className="text-ink-400">Zustaendig</dt>
<dt className="text-ink-400">Zuständig</dt>
<dd className="truncate font-semibold text-ink-700">{selectedLead.owner_name || '—'}</dd>
</div>
</dl>