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)