presseportale/dev/archive/frontend/hub-flux/11-PHASE-4E-PROFILE-SETTINGS.md
Kevin Adametz 6a4c4d8837 docs: dev-Doku für den Live-Betrieb neu sortiert — Archiv + Betrieb + Roadmap
Das System ist seit 20.07.2026 live; die dev-Doku spiegelt jetzt den
Betriebszustand statt der Release-Vorbereitung:

- dev/betrieb/: Deploy-Runbook (neu: §10 Betrieb nach Go-Live mit
  SFTP-Deploy-Checkliste inkl. queue:restart-Pflicht und den
  Betriebs-Erkenntnissen der Go-Live-Woche), Legacy-API-Parität, Umami.
- dev/roadmap.md: offene Nachlauf-Punkte (Go-Live-Mails, Merge nach main,
  Stripe-Test-Artefakte, Key-Rotation, Alt-System-Abschaltung) und
  Ideen-Backlog.
- dev/archive/: abgeschlossene Phasen — Migration-2026-Planung,
  Cutover-Runbook (mit Erledigt-Vermerk), Release-Plan/QA-Checkliste,
  Optimierungsphasen, Frontend-Konzepte + Responsive-Audits vom 16.07.,
  Altsystem-Reste.
- dev/README.md als Wegweiser; gitignore-Pfad der SQL-Dumps mitgezogen
  (dev/archive/migration-2026/sql/ bleibt untracked, ebenso dev/migration/
  und dev/api/).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-21 07:52:38 +00:00

103 lines
4.1 KiB
Markdown

# Phase 4E — Profile & Settings
> Fünftes Päckchen aus Phase 4. Folgt auf 4D Companies.
**Status**: ✅ abgeschlossen · **Aufwand**: ~½ Tag · **Risiko**: niedrig
---
## Scope
**Admin / „/settings/*" (alle Rollen)**
- `resources/views/livewire/settings/profile.blade.php` (117 Z.)
- `resources/views/livewire/settings/password.blade.php` (82 Z.)
- `resources/views/livewire/settings/appearance.blade.php` (21 Z.)
- `resources/views/livewire/settings/delete-user-form.blade.php`
(59 Z., wird in profile.blade.php als Komponente eingebunden)
**Customer („Mein Bereich")**
- `resources/views/livewire/customer/profile.blade.php` (451 Z.)
- `resources/views/livewire/customer/security.blade.php` (295 Z.)
NICHT in diesem Päckchen:
- `customer/invoices.blade.php`, `customer/tokens.blade.php`,
`customer/bookings.blade.php`, `customer/company-switcher` —
eigenes Päckchen 4F.
- 2FA-Pages aus Fortify-Standard-Setup — bleiben FluxUI bis sie
separat angepackt werden.
## Ziel
Beide Settings-Strecken im Hub-Vokabular wie Press-Releases /
Companies:
- **Page-Header** mit Rolle-Pille („Admin Backend" oder
„User Backend") + Eyebrow + H1 + Subtitle.
- **Form-Sektionen** als `.panel` mit `.panel-head` und
`section-eyebrow`.
- **FluxUI-Form-Felder** bleiben (`flux:field`, `flux:input`,
`flux:label`, `flux:error`, `flux:checkbox`, `flux:radio`,
`flux:textarea`, `flux:button`).
- **Required-Marker** auf Hub-Token (`text-[color:var(--color-err)]`).
- **Save-Action** in eigenem Panel-Footer mit Save-Indicator-Span.
- **Flash-/Success-Messages** auf Hub-Token-Pillen.
- **Danger-Zone** (Delete-Account, Sessions löschen) als
`.panel` mit `is-danger`-Akzent (linker Roter Strip).
## Was explizit NICHT angefasst wird
- Volt-Logik in allen Dateien.
- `<x-settings.layout>` Wrapper-Komponente (falls vorhanden) —
Layout-only-Änderungen, keine Hülle.
- 2FA-/Confirm-Password-Modals.
- Test-relevante Strings auf customer/profile + customer/security:
- **profile**: „Rechnungsadresse"
- **security**: „Konto-Sicherheit", „Letzter Login",
„Aktive Sessions", „Passwort ändern", „E-Mail-Adresse ändern",
„Zwei-Faktor-Authentifizierung"
## Akzeptanzkriterien
- [x] Plan
- [x] `partials/settings-heading` zentral auf Hub-Page-Header.
- [x] `components/settings/layout` zentral auf Hub-Sidebar +
Content-Panel.
- [x] `settings/appearance` Hub-styled (profitiert vom neuen
Wrapper, kein Body-Touch nötig).
- [x] `settings/profile` Hub-styled + Verification-Hinweis als
Hub-Warn-Box + Save-Button mit Token-„Saved."-Pill.
- [x] `settings/delete-user-form` als Hub-Danger-Box mit
linkem Roten Strip. Modal-Markup unverändert.
- [x] `settings/password` Hub-styled (Save-Bar mit Border-Top).
- [x] `customer/profile` Hub-styled: Header, 3 Panels (Konto,
Profil, Rechnungsadresse), Aktionen-Panel, Zugeordnete-Firmen-
Panel mit Hub-Badges.
- [x] `customer/security` Hub-styled: Header, 4-spaltige
KPI-Reihe, Passwort+E-Mail 2-Col-Grid, 2FA-Panel mit
Hub-Recovery-Codes, Sessions-Panel mit Hub-Empty-State.
- [x] Tests grün:
- `Settings|CustomerProfileSecurity|CustomerCompanyContext`
→ 33 passed (146 assertions).
- Volle Suite → 230 passed, 3 skipped, 1 pre-existing
`ApiDocumentationTest`-Fail (nicht von 4E).
- [x] Build + Pint + PROGRESS.
## Notes
- Der zentrale Umbau der beiden Wrapper (`settings-heading`,
`settings.layout`) hat sich bezahlt gemacht: die drei
`settings/*`-Pages sind weitgehend identisch klein geblieben,
Page-Header und Side-Nav kommen automatisch im Hub-Look.
- `<x-action-message>` für „Saved."-Toast bleibt drin, aber
der Slot ist auf einen Hub-getönten `<span>` umgestellt.
- Empty-State für „Aktive Sessions" nutzt das gleiche
Hub-Icon-Box-Pattern wie auf den Press-Releases-Listen.
- 2FA-QR-Container behält explizit weißen Hintergrund —
QR-Codes brauchen hohen Kontrast unabhängig vom Mode.
- Alle Test-Pflicht-Strings unverändert: „Rechnungsadresse",
„Konto-Sicherheit", „Letzter Login", „Aktive Sessions",
„Passwort ändern", „E-Mail-Adresse ändern",
„Zwei-Faktor-Authentifizierung".