No description
Find a file
Kevin Adametz e77d9e7d09 feat: API-Zugang endet mit der Buchung, optionales Ablaufdatum für API-Tokens
Bisher blieb ein einmal erstellter Token gültig, auch wenn Abo bzw. Buchung
längst beendet waren. EnsureApiAccessIsBooked prüft jetzt bei jeder Anfrage
(v1 und /service/…-Altpfade), ob das Konto API-Zugang hat
(ApiAccessEligibilityService::hasApiAccess), sonst 403. Die Tokens bleiben
erhalten und funktionieren nach erneuter Buchung wieder.

Kunden können beim Erstellen optional ein Ablaufdatum setzen (bis 5 Jahre);
die Token-Liste zeigt „Gültig bis“ und einen Hinweis, wenn der Zugang
pausiert ist. sanctum:prune-expired räumt abgelaufene Tokens nach 30 Tagen
täglich ab. API-Doku (public/api/v1.yml) ergänzt.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 11:41:24 +00:00
.agents/skills livewire: Volt entfernt — Komponenten als Livewire-4-Single-File-Components, Route::livewire(), Livewire::test(); livewire/volt deinstalliert 2026-10-06 13:59:36 +00:00
.ai/rules ops: Lokale Datenbank gegen fremde Testläufe absichern — DB_* nicht mehr als Container-Umgebung, Agenten-Regel, Testdatenbank-Pflicht im Baukasten 2026-10-07 16:09:25 +00:00
.codex mcp: Context7-API-Schlüssel aus .mcp.json und .codex/config.toml entfernt — kommt jetzt aus CONTEXT7_API_KEY 2026-10-05 12:53:06 +00:00
.devcontainer 22-05-2026 Optimierung der User und Admin Panels 2026-05-22 11:18:59 +02:00
.github/workflows billing/dev: Vertragsende in der MAN-Abrechnung, Rechnungslauf ohne Tageskappe, Qualitätsgates (Audit Block 5+6, Deploy E) 2026-09-18 10:41:04 +00:00
_docs create PM v0.5 2026-05-20 19:14:39 +02:00
app feat: API-Zugang endet mit der Buchung, optionales Ablaufdatum für API-Tokens 2026-10-08 11:41:24 +00:00
bootstrap security: Proxy-Vertrauen nur noch lokal, HSTS in Produktion, Tests ohne echte ntfy-Pushes 2026-10-08 11:41:24 +00:00
config security: Proxy-Vertrauen nur noch lokal, HSTS in Produktion, Tests ohne echte ntfy-Pushes 2026-10-08 11:41:24 +00:00
database security: Sicherheitsaudit 07.10.2026 (S-01–S-06) behoben, Passkeys und Zweitfaktor-Pflicht für Admins 2026-10-07 16:09:35 +00:00
dev dev: Deploy v1.4.0 und v1.4.1 im Git-Deploy-Protokoll, Release-Stand im Sicherheitsaudit und Entwicklungsplan 2026-10-08 08:19:19 +00:00
lang web/admin/pdf: gemeinsame Bildnachweis-Auflösung, Detailfenster am Artikelbild, Bestätigungsstand in Kunden- und Adminansicht, Wortwahl „automatisierte Prüfung" (Bildkennzeichnung Block D) 2026-09-22 09:44:34 +00:00
public feat: API-Zugang endet mit der Buchung, optionales Ablaufdatum für API-Tokens 2026-10-08 11:41:24 +00:00
resources feat: API-Zugang endet mit der Buchung, optionales Ablaufdatum für API-Tokens 2026-10-08 11:41:24 +00:00
routes feat: API-Zugang endet mit der Buchung, optionales Ablaufdatum für API-Tokens 2026-10-08 11:41:24 +00:00
storage/debugbar first commit 2025-10-20 17:53:02 +02:00
tests feat: API-Zugang endet mit der Buchung, optionales Ablaufdatum für API-Tokens 2026-10-08 11:41:24 +00:00
.cursorrules livewire: Volt entfernt — Komponenten als Livewire-4-Single-File-Components, Route::livewire(), Livewire::test(); livewire/volt deinstalliert 2026-10-06 13:59:36 +00:00
.editorconfig first commit 2025-10-20 17:53:02 +02:00
.env.example security: Proxy-Vertrauen nur noch lokal, HSTS in Produktion, Tests ohne echte ntfy-Pushes 2026-10-08 11:41:24 +00:00
.gitattributes first commit 2025-10-20 17:53:02 +02:00
.gitignore fix: eigene Flux-Icons ins Repository — macOS-Muster "Icon" in der .gitignore traf bei core.ignorecase auch resources/views/flux/icon/ 2026-10-06 13:35:44 +00:00
.mcp.json mcp: Context7-API-Schlüssel aus .mcp.json und .codex/config.toml entfernt — kommt jetzt aus CONTEXT7_API_KEY 2026-10-05 12:53:06 +00:00
AGENTS.md livewire: Volt entfernt — Komponenten als Livewire-4-Single-File-Components, Route::livewire(), Livewire::test(); livewire/volt deinstalliert 2026-10-06 13:59:36 +00:00
artisan first commit 2025-10-20 17:53:02 +02:00
boost.json livewire: Volt entfernt — Komponenten als Livewire-4-Single-File-Components, Route::livewire(), Livewire::test(); livewire/volt deinstalliert 2026-10-06 13:59:36 +00:00
CLAUDE.md ops: Lokale Datenbank gegen fremde Testläufe absichern — DB_* nicht mehr als Container-Umgebung, Agenten-Regel, Testdatenbank-Pflicht im Baukasten 2026-10-07 16:09:25 +00:00
composer.json livewire: Volt entfernt — Komponenten als Livewire-4-Single-File-Components, Route::livewire(), Livewire::test(); livewire/volt deinstalliert 2026-10-06 13:59:36 +00:00
composer.lock livewire: Volt entfernt — Komponenten als Livewire-4-Single-File-Components, Route::livewire(), Livewire::test(); livewire/volt deinstalliert 2026-10-06 13:59:36 +00:00
docker-compose.yml ops: Lokale Datenbank gegen fremde Testläufe absichern — DB_* nicht mehr als Container-Umgebung, Agenten-Regel, Testdatenbank-Pflicht im Baukasten 2026-10-07 16:09:25 +00:00
package-lock.json security: Sicherheitsaudit 07.10.2026 (S-01–S-06) behoben, Passkeys und Zweitfaktor-Pflicht für Admins 2026-10-07 16:09:35 +00:00
package.json security: Sicherheitsaudit 07.10.2026 (S-01–S-06) behoben, Passkeys und Zweitfaktor-Pflicht für Admins 2026-10-07 16:09:35 +00:00
phpstan-baseline.neon security: Sicherheitsaudit 07.10.2026 (S-01–S-06) behoben, Passkeys und Zweitfaktor-Pflicht für Admins 2026-10-07 16:09:35 +00:00
phpstan.neon technik: Statische Analyse wieder aussagekräftig machen 2026-09-01 11:07:51 +00:00
phpunit.xml security: Proxy-Vertrauen nur noch lokal, HSTS in Produktion, Tests ohne echte ntfy-Pushes 2026-10-08 11:41:24 +00:00
pint.json 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
Readme.md 19-05-2026 Rebrand Pressekonto, Hub-Flux UI und Legacy-Media-Migration 2026-05-19 16:36:13 +00:00
setup-new-asset-urls.sh 19-05-2026 Rebrand Pressekonto, Hub-Flux UI und Legacy-Media-Migration 2026-05-19 16:36:13 +00:00
tailwind.portal.config.js Multi-Domain-Asset-Infrastruktur: geteilte Vite-Konfiguration und DomainAssetContext 2026-06-12 08:16:09 +00:00
tailwind.web.config.js 12-05-2026 Frontend dev 2026-05-12 18:32:33 +02:00
vite 13-05-2026 Frontend DEV + HUB 2026-05-13 18:11:03 +02:00
vite.config.js 19-05-2026 Rebrand Pressekonto, Hub-Flux UI und Legacy-Media-Migration 2026-05-19 16:36:13 +00:00
vite.portal.config.js security: Sicherheitsaudit 07.10.2026 (S-01–S-06) behoben, Passkeys und Zweitfaktor-Pflicht für Admins 2026-10-07 16:09:35 +00:00
vite.shared.js Multi-Domain-Asset-Infrastruktur: geteilte Vite-Konfiguration und DomainAssetContext 2026-06-12 08:16:09 +00:00
vite.web.config.js monitoring: Betriebsüberwachung Phase 1 — GlitchTip (Server- und Browserfehler), Fehlersignale ohne Exception, /health mit Scheduler-Herzschlag, ntfy-Alarme, fehlgeschlagene Anmeldungen im Verlauf, Umami im Kundenbereich, Versionsnummer 2026-10-05 12:53:00 +00:00

Multi-Domain Laravel-Anwendung

Übersicht

Diese Laravel-Anwendung unterstützt verschiedene Domains mit unterschiedlichen Styles:

Installation

  1. Repository klonen
  2. Abhängigkeiten installieren:
    composer install
    npm install
    
  3. Umgebungsvariablen konfigurieren (siehe .env.example und DOMAINS-CONFIG.md)
  4. Laravel-Anwendung initialisieren:
    php artisan key:generate
    php artisan migrate
    
  5. Assets kompilieren:
    npm run build
    npm run build:admin
    npm run build:web
    

Domain-Konfiguration

Die Domains werden über die .env-Datei konfiguriert. Für detaillierte Anweisungen siehe DOMAINS-CONFIG.md.

Lokaler Entwicklungsserver

php artisan serve

Asset-Kompilierung

Diese Anwendung verwendet Vite mit verschiedenen Konfigurationen:

  • Hauptkompilierung: npm run dev oder npm run build
  • Admin-Assets: npm run build:admin
  • Web-Assets: npm run build:web

Domain-Simulation

Während der Entwicklung können Domains simuliert werden, ohne die Hosts-Datei zu bearbeiten:

  1. In der .env-Datei: DEV_SIMULATE_DOMAIN=true
  2. Gewünschte Domain angeben: DEV_SIMULATED_DOMAIN=landing1.local

Favicons

Um Platzhalter-Favicons für alle konfigurierten Domains zu generieren:

php artisan domains:generate-favicons