Kundenportal: Toggle "Deaktivierte Verträge anzeigen"

Der Admin-/Mitarbeiter-Blick (CustomerDetail) hatte den Toggle schon;
jetzt auch in der Kundenportal-Vertragsübersicht (ContractList,
Portal-Zweig). Button nur bei isCustomerPortal, reicht
includeDeactivated an die getTreeForCustomer-Queries durch
(showDeactivated im Query-Key → frischer Fetch beim Umschalten).

Security: derselbe Endpoint hinter canAccessCustomer (R120) – der
Portal-Kunde bekommt nur eigene/vertretene Bäume, das Flag weitet
nur den Status-Filter innerhalb der erlaubten Daten. Keine neue
Exposition.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-07-27 16:48:24 +02:00
co-authored by Claude Opus 4.7
parent e8d996d07e
commit fd8be1d5c4
2 changed files with 37 additions and 10 deletions
+11
View File
@@ -97,6 +97,17 @@ isolierte Instanz (keine Multi-Tenancy im Code), Provisioning + Abrechnung
## ✅ Erledigt
- [x] **👁 Kundenportal: Toggle „Deaktivierte Verträge anzeigen"**
- Der Admin-/Mitarbeiter-Blick (CustomerDetail) hatte den Toggle schon;
jetzt auch in der Kundenportal-Vertragsübersicht (`ContractList`,
Portal-Zweig). Button nur bei `isCustomerPortal`, reicht
`includeDeactivated` an die `getTreeForCustomer`-Queries durch
(`showDeactivated` im Query-Key → frischer Fetch beim Umschalten).
- Security: nutzt denselben Endpoint hinter `canAccessCustomer`
(R120) Portal-Kunde sieht nur eigene/vertretene Bäume, das Flag
weitet nur den Status-Filter innerhalb der erlaubten Daten. Keine
neue Exposition.
- [x] **🔒 Mobilfunknetz: server-seitige Whitelist (Pentest-INFO)**
- `mobileNetwork` akzeptierte serverseitig jeden (stripHtml-bereinigten)
String das Frontend-Dropdown beschränkte nur clientseitig. Jetzt