From 37039f082cc5471f131efcd7803e76a7b06839cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20G=C3=BCnther?= Date: Sun, 22 Mar 2026 00:14:00 +0100 Subject: [PATCH] Event identifiers for anonymizations --- app/Domains/Event/Actions/CreateEvent/CreateEventCommand.php | 2 ++ app/Domains/Event/Controllers/SignupController.php | 4 ++-- app/Domains/Event/Views/Partials/AvailableEvents.vue | 2 +- app/Repositories/EventRepository.php | 5 +++++ app/Resources/EventResource.php | 1 + database/migrations/2026_02_14_140010_create_events.php | 1 + 6 files changed, 12 insertions(+), 3 deletions(-) diff --git a/app/Domains/Event/Actions/CreateEvent/CreateEventCommand.php b/app/Domains/Event/Actions/CreateEvent/CreateEventCommand.php index 33cc5ff..4432649 100644 --- a/app/Domains/Event/Actions/CreateEvent/CreateEventCommand.php +++ b/app/Domains/Event/Actions/CreateEvent/CreateEventCommand.php @@ -7,6 +7,7 @@ use App\Models\Event; use App\Models\Tenant; use App\RelationModels\EventEatingHabits; use App\RelationModels\EventLocalGroups; +use Illuminate\Support\Str; class CreateEventCommand { private CreateEventRequest $request; @@ -27,6 +28,7 @@ class CreateEventCommand { $event = Event::create([ 'tenant' => app('tenant')->slug, 'name' => $this->request->name, + 'identifier' => Str::random(10), 'location' => $this->request->location, 'postal_code' => $this->request->postalCode, 'email' => $this->request->email, diff --git a/app/Domains/Event/Controllers/SignupController.php b/app/Domains/Event/Controllers/SignupController.php index f314c86..be1656e 100644 --- a/app/Domains/Event/Controllers/SignupController.php +++ b/app/Domains/Event/Controllers/SignupController.php @@ -18,13 +18,13 @@ use Illuminate\Http\Request; use Illuminate\Support\Facades\Mail; class SignupController extends CommonController { - public function __invoke(int $eventId, Request $request) { + public function __invoke(string $eventId, Request $request) { $availableEvents = []; foreach ($this->events->getAvailable(false) as $event) { $availableEvents[] = $event->toResource()->toArray($request); }; - $event = $this->events->getById($eventId, false)?->toResource()->toArray($request); + $event = $this->events->getByIdentifier($eventId, false)?->toResource()->toArray($request); $participantData = [ 'firstname' => '', diff --git a/app/Domains/Event/Views/Partials/AvailableEvents.vue b/app/Domains/Event/Views/Partials/AvailableEvents.vue index 5ffac72..eb1d8b7 100644 --- a/app/Domains/Event/Views/Partials/AvailableEvents.vue +++ b/app/Domains/Event/Views/Partials/AvailableEvents.vue @@ -69,7 +69,7 @@ console.log(props.events)