Commit Graph

3 Commits

Author SHA1 Message Date
cc92b48869 UI: Reseller aufklappbar (Admins) + Firmen-Aufklapp nur einloggbare
- ResellersView: Zeilen aufklappbar → Reseller-Admins (login + ROLE_RESELLER_ADMIN)
  je „Einloggen als"; Plattform-Org ohne Admins bleibt zu.
- CompaniesView: Aufklapp listet nur noch einloggbare Mitarbeiter (login=true),
  „kein Login"-Zeilen entfallen.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 18:24:56 +02:00
7af4eafcad UI: „Einloggen als" je Reseller (Portal-Admin)
ResellersView: pro Reseller ein „Einloggen als" → impersoniert den Reseller-Admin
(login + ROLE_RESELLER_ADMIN der zugehörigen Firma) → Wechsel in Reseller-Kontext.
Eigene Plattform-Org (nur Plattform-Admins) bekommt korrekt keinen Button.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 16:02:20 +02:00
ebaf509a2f Fundament: Symfony+API-Platform-Backend & Vue-SPA (Phase 0–2)
Stack & Setup
- Dockerisierte Dev-Umgebung (PHP 8.4-FPM, Nginx, MariaDB 11.4)
- Symfony 7.4 + API Platform 4.3, Doctrine ORM, LexikJWT, Messenger
- Vue 3 + TS (Vite), Vue Router, Pinia, Axios

Kern-Domäne & Auth
- Entitäten: User, PlatformPlan, Reseller, Company, Domain, Location,
  Employee, ContactLink (UUIDv7)
- JWT-Login (/api/login), Rollen-Hierarchie, /api/me
- Mandantentrennung via API-Platform-Query-Extension (Lesen) +
  TenantStampProcessor (Schreiben)

Öffentliche Profile (SSR)
- Profil-Landingpage, vCard-Download, QR-Code im Marken-Look
- Stabiler NFC/QR-Kurz-Link /t/{code} -> Redirect aufs aktuelle Profil
- Firmenspezifisches Branding (Farben/Logo) auf der Profilseite

Verwaltungsoberfläche (SPA)
- Brand-Look (dunkle Sidebar), rollenbasierte Navigation
- Dashboard, Reseller (+Provisioning), Firmen, Mitarbeiter, Standorte,
  Domains, Design/Branding mit Live-Vorschau

Konzept & Doku: docs/KONZEPT.md (inkl. Wallet/Sync §12), README.md

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-05-31 11:12:53 +02:00