QR-Codes-UI zu Einladungen umgebaut mit PDF-Export und Druckanzeige + Customizer

This commit is contained in:
Codex Agent
2025-10-30 07:12:27 +01:00
parent d781448914
commit 06df61f706
20 changed files with 1724 additions and 537 deletions

View File

@@ -1,14 +1,15 @@
<?php
namespace App\Filament\Tenant\Pages;
use App\Models\Event;
use App\Models\EventJoinToken;
use App\Services\EventJoinTokenService;
use App\Support\JoinTokenLayoutRegistry;
use App\Support\TenantOnboardingState;
use BackedEnum;
use Filament\Notifications\Notification;
use Filament\Pages\Page;
use BackedEnum;
use Illuminate\Support\Arr;
use Illuminate\Support\Collection;
use Illuminate\Support\Facades\URL;
@@ -91,7 +92,7 @@ class InviteStudio extends Page
return;
}
$label = $this->tokenLabel ?: 'Einladung ' . now()->format('d.m.');
$label = $this->tokenLabel ?: 'Einladung '.now()->format('d.m.');
$layoutPreference = Arr::get($tenant->settings ?? [], 'branding.preferred_invite_layout');
@@ -141,7 +142,7 @@ class InviteStudio extends Page
protected function mapToken(Event $event, EventJoinToken $token): array
{
$downloadUrls = JoinTokenLayoutRegistry::toResponse(function (string $layoutId, string $format) use ($event, $token) {
return route('tenant.events.join-tokens.layouts.download', [
return route('api.v1.tenant.events.join-tokens.layouts.download', [
'event' => $event->slug,
'joinToken' => $token->getKey(),
'layout' => $layoutId,
@@ -152,7 +153,7 @@ class InviteStudio extends Page
return [
'id' => $token->getKey(),
'label' => $token->label ?? 'Einladungslink',
'url' => URL::to('/e/' . $token->token),
'url' => URL::to('/e/'.$token->token),
'created_at' => optional($token->created_at)->format('d.m.Y H:i'),
'usage_count' => $token->usage_count,
'usage_limit' => $token->usage_limit,