FAQ pro Mandant statt fest codiertem AOK-Inhalt
faq.php zeigte bislang fuer jeden Mandanten denselben, komplett AOK-spezifischen Inhalt (Kaffeemaschinen-Bedienung, interner Ansprechpartner) - fuer andere Kunden unbrauchbar und inhaltlich falsch. - Neue Tabelle faq_entries (tenant-scoped, Soft-Delete, sort_order). - Migration uebernimmt die bisherigen AOK-Inhalte einmalig als FAQ des migrierten Default-Mandanten; andere Mandanten sehen sie nicht. - Neue Mandanten bekommen bei der Registrierung automatisch eine kurze generische Starter-FAQ (faq_seed_default_entries), frei editierbar. - faq.php: lesbar fuer alle angemeldeten Mitglieder eines Mandanten, Anlegen/Bearbeiten/Entfernen auf owner/admin beschraenkt. - Landingpage verweist nicht mehr auf faq.php (jetzt interner, mandantengebundener Inhalt statt oeffentlicher Marketing-Seite). Live getestet: AOK-Carry-over fuer Default-Mandant, frisch registrierter Test-Mandant bekam isolierte generische Starter-FAQ, Anlegen mit HTML-Payload (korrekt escaped), Bearbeiten und Soft-Delete geprueft. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -303,6 +303,45 @@ Fehlermeldung fehl.
|
||||
Dashboard integriert).
|
||||
- Export, Mail und Jahresprozesse bleiben M6-Themen.
|
||||
|
||||
## Nachtrag: FAQ pro Mandant
|
||||
|
||||
Umgesetzte Dateien:
|
||||
|
||||
```text
|
||||
database/migrations/0012_saas_faq_entries.sql
|
||||
app/faq.php
|
||||
faq.php
|
||||
app/saas-auth.php (Starter-FAQ bei Registrierung)
|
||||
landing.php (Link auf die jetzt mandantengebundene faq.php entfernt)
|
||||
```
|
||||
|
||||
Hintergrund: `faq.php` war komplett AOK-spezifischer Inhalt
|
||||
(Kaffeemaschinen-Bedienung, Milch-/Zucker-Standort, interner
|
||||
Ansprechpartner) und für jeden Mandanten identisch sichtbar – nicht
|
||||
brauchbar für andere Kunden.
|
||||
|
||||
- Neue Tabelle `faq_entries` (tenant-scoped, Soft-Delete via `deleted_at`,
|
||||
`sort_order` für die Reihenfolge).
|
||||
- Die Migration übernimmt die bisherigen AOK-Inhalte einmalig als erste
|
||||
FAQ-Einträge des migrierten Default-Mandanten (`kl_hinweise`-Migration
|
||||
als Vorbild). Andere Mandanten sehen diese Inhalte nicht.
|
||||
- Neue Mandanten bekommen bei der Registrierung automatisch eine kurze,
|
||||
generische Starter-FAQ (`faq_seed_default_entries()`, vier Fragen zu
|
||||
Einrichtung, Rollen, PayPal, eigenem Stand) – editierbar, nicht bindend.
|
||||
- `faq.php` ist jetzt für alle angemeldeten Mitglieder eines Mandanten
|
||||
lesbar (auch Legacy-Fallback über `checkKaffeelisteAccess`); Anlegen,
|
||||
Bearbeiten und Entfernen einzelner Fragen ist auf `owner`/`admin`
|
||||
beschränkt (beziehungsweise `checkKaffeelisteAdmin` im Legacy-Fallback).
|
||||
- Die Landingpage verweist nicht mehr auf `faq.php` (das ist jetzt
|
||||
interner, mandantengebundener App-Inhalt), sondern zeigt den
|
||||
vollständigen generischen FAQ-Auszug direkt auf der Seite selbst.
|
||||
|
||||
Live getestet: Carry-over der AOK-Inhalte für den Default-Mandanten
|
||||
geprüft, ein frisch registrierter Test-Mandant bekam korrekt die
|
||||
generische Starter-FAQ (isoliert von den AOK-Inhalten), Anlegen mit
|
||||
HTML/Skript-Payload im Text (korrekt escaped), Bearbeiten und
|
||||
Soft-Delete-Löschen erfolgreich geprüft. Testdaten anschließend entfernt.
|
||||
|
||||
## Aktueller Prüfstatus
|
||||
|
||||
- M4 Ledger-Migration: grün mit 73 Assertions (Storno-fähig).
|
||||
|
||||
Reference in New Issue
Block a user