From 2287e7f32cb4d2f97c9d7afd77827b39ed6e4a58 Mon Sep 17 00:00:00 2001 From: Codex Agent Date: Mon, 12 Jan 2026 14:35:57 +0100 Subject: [PATCH] Fix tenant photo moderation and guest updates --- .../Api/Tenant/PhotoController.php | 9 +- .../SendPhotoUploadedNotification.php | 117 ++++++++++++- app/Services/GuestNotificationService.php | 33 ++++ firefox_i0ktsA4zsn.png | Bin 0 -> 121312 bytes resources/js/guest/components/Header.tsx | 157 +++++++----------- .../HeaderNotificationToggle.test.tsx | 5 +- .../context/NotificationCenterContext.tsx | 8 +- resources/js/guest/i18n/messages.ts | 16 +- .../Tenant/PhotoModerationControllerTest.php | 26 +++ .../SendPhotoUploadedNotificationTest.php | 144 ++++++++++++++++ 10 files changed, 408 insertions(+), 107 deletions(-) create mode 100644 firefox_i0ktsA4zsn.png create mode 100644 tests/Feature/Tenant/PhotoModerationControllerTest.php create mode 100644 tests/Unit/SendPhotoUploadedNotificationTest.php diff --git a/app/Http/Controllers/Api/Tenant/PhotoController.php b/app/Http/Controllers/Api/Tenant/PhotoController.php index 25c8ebf..5429342 100644 --- a/app/Http/Controllers/Api/Tenant/PhotoController.php +++ b/app/Http/Controllers/Api/Tenant/PhotoController.php @@ -525,13 +525,13 @@ class PhotoController extends Controller ]); // Only tenant admins can moderate - if (isset($validated['status']) && ! $this->tokenHasScope($request, 'tenant:write')) { + if (isset($validated['status']) && ! $this->tokenHasScope($request, 'tenant-admin')) { return ApiError::response( 'insufficient_scope', 'Insufficient Scopes', 'You are not allowed to moderate photos for this event.', Response::HTTP_FORBIDDEN, - ['required_scope' => 'tenant:write'] + ['required_scope' => 'tenant-admin'] ); } @@ -823,6 +823,11 @@ class PhotoController extends Controller private function tokenHasScope(Request $request, string $scope): bool { + $accessToken = $request->user()?->currentAccessToken(); + if ($accessToken && $accessToken->can($scope)) { + return true; + } + $scopes = $request->user()->scopes ?? ($request->attributes->get('decoded_token')['scopes'] ?? []); if (! is_array($scopes)) { diff --git a/app/Listeners/GuestNotifications/SendPhotoUploadedNotification.php b/app/Listeners/GuestNotifications/SendPhotoUploadedNotification.php index d5cb599..1ba077b 100644 --- a/app/Listeners/GuestNotifications/SendPhotoUploadedNotification.php +++ b/app/Listeners/GuestNotifications/SendPhotoUploadedNotification.php @@ -5,11 +5,19 @@ namespace App\Listeners\GuestNotifications; use App\Enums\GuestNotificationAudience; use App\Enums\GuestNotificationType; use App\Events\GuestPhotoUploaded; +use App\Models\GuestNotification; use App\Models\Photo; use App\Services\GuestNotificationService; +use Illuminate\Support\Carbon; class SendPhotoUploadedNotification { + private const DEDUPE_WINDOW_SECONDS = 30; + + private const GROUP_WINDOW_MINUTES = 10; + + private const MAX_GROUP_PHOTOS = 6; + /** * @param int[] $milestones */ @@ -25,7 +33,20 @@ class SendPhotoUploadedNotification ? sprintf('%s hat gerade ein Foto gemacht 🎉', $guestLabel) : 'Es gibt neue Fotos!'; - $this->notifications->createNotification( + $recent = $this->findRecentPhotoNotification($event->event->id); + if ($recent) { + if ($this->shouldSkipDuplicate($recent, $event->photoId, $title)) { + return; + } + + $notification = $this->updateGroupedNotification($recent, $event->photoId); + $this->markUploaderRead($notification, $event->guestIdentifier); + $this->maybeCreateMilestoneNotification($event, $guestLabel); + + return; + } + + $notification = $this->notifications->createNotification( $event->event, GuestNotificationType::PHOTO_ACTIVITY, $title, @@ -34,11 +55,15 @@ class SendPhotoUploadedNotification 'audience_scope' => GuestNotificationAudience::ALL, 'payload' => [ 'photo_id' => $event->photoId, + 'photo_ids' => [$event->photoId], + 'count' => 1, ], 'expires_at' => now()->addHours(3), ] ); + $this->markUploaderRead($notification, $event->guestIdentifier); + $this->maybeCreateMilestoneNotification($event, $guestLabel); } @@ -87,4 +112,94 @@ class SendPhotoUploadedNotification return $guestIdentifier; } + + private function findRecentPhotoNotification(int $eventId): ?GuestNotification + { + $cutoff = Carbon::now()->subMinutes(self::GROUP_WINDOW_MINUTES); + + return GuestNotification::query() + ->where('event_id', $eventId) + ->where('type', GuestNotificationType::PHOTO_ACTIVITY) + ->active() + ->notExpired() + ->where('created_at', '>=', $cutoff) + ->orderByDesc('id') + ->first(); + } + + private function shouldSkipDuplicate(GuestNotification $notification, int $photoId, string $title): bool + { + $payload = $notification->payload; + if (is_array($payload)) { + $payloadIds = array_filter( + array_map( + fn ($value) => is_numeric($value) ? (int) $value : null, + (array) ($payload['photo_ids'] ?? []) + ), + fn ($value) => $value !== null && $value > 0 + ); + if (in_array($photoId, $payloadIds, true)) { + return true; + } + if (is_numeric($payload['photo_id'] ?? null) && (int) $payload['photo_id'] === $photoId) { + return true; + } + } + + $cutoff = Carbon::now()->subSeconds(self::DEDUPE_WINDOW_SECONDS); + if ($notification->created_at instanceof Carbon && $notification->created_at->greaterThanOrEqualTo($cutoff)) { + return $notification->title === $title; + } + + return false; + } + + private function updateGroupedNotification(GuestNotification $notification, int $photoId): GuestNotification + { + $payload = is_array($notification->payload) ? $notification->payload : []; + $photoIds = array_filter( + array_map( + fn ($value) => is_numeric($value) ? (int) $value : null, + (array) ($payload['photo_ids'] ?? []) + ), + fn ($value) => $value !== null && $value > 0 + ); + $photoIds[] = $photoId; + $photoIds = array_values(array_unique($photoIds)); + $photoIds = array_slice($photoIds, 0, self::MAX_GROUP_PHOTOS); + + $existingCount = is_numeric($payload['count'] ?? null) + ? max(1, (int) $payload['count']) + : max(1, count($photoIds) - 1); + $newCount = $existingCount + 1; + + $notification->forceFill([ + 'title' => $this->buildGroupedTitle($newCount), + 'payload' => [ + 'count' => $newCount, + 'photo_ids' => $photoIds, + ], + ])->save(); + + return $notification; + } + + private function buildGroupedTitle(int $count): string + { + if ($count <= 1) { + return 'Es gibt neue Fotos!'; + } + + return sprintf('Es gibt %d neue Fotos!', $count); + } + + private function markUploaderRead(GuestNotification $notification, string $guestIdentifier): void + { + $guestIdentifier = trim($guestIdentifier); + if ($guestIdentifier === '' || $guestIdentifier === 'anonymous') { + return; + } + + $this->notifications->markAsRead($notification, $guestIdentifier); + } } diff --git a/app/Services/GuestNotificationService.php b/app/Services/GuestNotificationService.php index ed27b9b..8bbd94b 100644 --- a/app/Services/GuestNotificationService.php +++ b/app/Services/GuestNotificationService.php @@ -126,6 +126,36 @@ class GuestNotificationService return null; } + $photoId = Arr::get($payload, 'photo_id'); + if (is_numeric($photoId)) { + $photoId = max(1, (int) $photoId); + } else { + $photoId = null; + } + + $photoIds = Arr::get($payload, 'photo_ids'); + if (is_array($photoIds)) { + $photoIds = array_values(array_unique(array_filter(array_map(function ($value) { + if (! is_numeric($value)) { + return null; + } + + $int = (int) $value; + + return $int > 0 ? $int : null; + }, $photoIds)))); + $photoIds = array_slice($photoIds, 0, 10); + } else { + $photoIds = []; + } + + $count = Arr::get($payload, 'count'); + if (is_numeric($count)) { + $count = max(1, min(9999, (int) $count)); + } else { + $count = null; + } + $cta = Arr::get($payload, 'cta'); if (is_array($cta)) { $cta = [ @@ -142,6 +172,9 @@ class GuestNotificationService $clean = array_filter([ 'cta' => $cta, + 'photo_id' => $photoId, + 'photo_ids' => $photoIds, + 'count' => $count, ]); return $clean === [] ? null : $clean; diff --git a/firefox_i0ktsA4zsn.png b/firefox_i0ktsA4zsn.png new file mode 100644 index 0000000000000000000000000000000000000000..e11f43539e0311553c5c10504a7f50f9ba12226b GIT binary patch literal 121312 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

23)1Z79=6Giv9Z5-ch2%ke0zxQ042Ssa5H4& zx4dgsSZx`DW%^HKnVfai1h?7@gws-Q&5mVDB7W+Ezce=~D@L@vi#2uA9mbKv4Zetb zv{wj#T+Vvz6jKOZuQ~&D@8Sr~vsu<}lbwzuDDBcLBme~Jofe|F$lehvp%Dgx4UreP z!Pwt*j{gm{S3f6%YN7VT?8N_4^D~u9Sb~O;m(O$S7N*v0iM;PeJm2N-NRA=h44FpL z*u1`N$@$TwR_k>c?W=$9>pNRHh}Z~aDVb1)OUkJ*|1*Sp^sNH!j_V?&8rE;JY5iZ` z7~kg)LKY{QrLDz>Zttc%qI;*XEho@w{5 zaE({!B3}Qqq#|&%S6L}#>dbt^GT(|!c%PV3Fi%uJ9FfP+s`(?b--JU^@t^e(Np^ul zOFMW|6VJOvmVc$BrK60UnV+9G>vEl%u&A^kgt>BxlDrY9%>S3oE3a2CgI-j_lcTZK zX6h)|$gxMoIsUWw;X~Z34aXKW-`t07BNs3i5TeXQ+UV!_UnK?bqovR9ADS+9oNJeL zCb&6WE`Xq2e6jzk`z%~K|HfD3&lwiLc}jK+M$uAP$y{#p<-gWn3GUtKKwFC-yi$UV z!LlS(2@w8BETo}yD<;ycIB_5JJkefYZh5T5*I3w)mOyHlacRRb)sauZ&ri55`x^IO z;m&Z7lWu-vBe#WjsooKaoUX2}kbX_V#@JKqv>ppFH#awO`mK}u*K|Eo5ym8?fzVqG zcbE8N);F(5g;HMF(=(GsPft((EGwIxpU*q=menQum+$0^ti9<0?Dm^YC2?C}sTvl5 zfVMe9I3tW6T347>G#vL)2F0;e&r^sJX(b}B;PGFFZCKJ%#uh*3O)+dZ@^LRSWz26M zGO;G{xW9$@e#mBK(bb`OE6dE4FluL5VgoEkv|cP>S==AdOem!%2)Y064nxkC-x%X+ zT*!+xin92M(f&Foc^ve($M0+*TC2wG^)!uzg?qxoEFwqg&qB6p$x=E}$6V<*#x7)! z1_}o)rXtQkfK}AZh+8(cM;G5yQ2q zBmI6edDc*-Ras$-*B1AgtZTAsCKpNN9q(T~@ewSO)aZ6;l?&CI zFcv&QB9K&c@S4dqWyL(=Sv50fI+S1p@tVltM8JoK5U+%b_ji$u3JL4kQ#WS-e?#5e zqLfUsDVvx!7dPdYXO#|2=mVNKlr}H=J(6~4V(|;`kSSTuKAqyDAFP8L{7toF-6N&FQ$5+syM?}gad;W8GfA)+fnEeJxTC`9lJwaRnFmrK;UQ^=j9+YRSBW|wQT z=OevbwqtY^mkj4RPI@}fW#05W$*_~O^g1TV%-2%r&g@n8MY)8}!iFcZ(ki3E*2<4fFKB&l+yLy6Wr}i nL_A;FQi`u#p)C|Ajh+7oFUXU>8^w2T00000NkvXXu0mjfaGBme literal 0 HcmV?d00001 diff --git a/resources/js/guest/components/Header.tsx b/resources/js/guest/components/Header.tsx index 224ca59..20b136d 100644 --- a/resources/js/guest/components/Header.tsx +++ b/resources/js/guest/components/Header.tsx @@ -27,7 +27,6 @@ import { SettingsSheet } from './settings-sheet'; import { useTranslation, type TranslateFn } from '../i18n/useTranslation'; import { DEFAULT_EVENT_BRANDING, useOptionalEventBranding } from '../context/EventBrandingContext'; import { useOptionalNotificationCenter, type NotificationCenterValue } from '../context/NotificationCenterContext'; -import { useGuestTaskProgress, TASK_BADGE_TARGET } from '../hooks/useGuestTaskProgress'; import { usePushSubscription } from '../hooks/usePushSubscription'; import { getContrastingTextColor, relativeLuminance } from '../lib/color'; import { isTaskModeEnabled } from '../lib/engagement'; @@ -151,7 +150,6 @@ export default function Header({ eventToken, title = '' }: { eventToken?: string const { event, status } = useEventData(); const notificationCenter = useOptionalNotificationCenter(); const [notificationsOpen, setNotificationsOpen] = React.useState(false); - const taskProgress = useGuestTaskProgress(eventToken); const tasksEnabled = isTaskModeEnabled(event); const panelRef = React.useRef(null); const notificationButtonRef = React.useRef(null); @@ -258,7 +256,6 @@ export default function Header({ eventToken, title = '' }: { eventToken?: string onToggle={() => setNotificationsOpen((prev) => !prev)} panelRef={panelRef} buttonRef={notificationButtonRef} - taskProgress={tasksEnabled && taskProgress?.hydrated ? taskProgress : undefined} t={t} /> )} @@ -285,18 +282,14 @@ type NotificationButtonProps = { onToggle: () => void; panelRef: React.RefObject; buttonRef: React.RefObject; - taskProgress?: ReturnType; t: TranslateFn; }; type PushState = ReturnType; -function NotificationButton({ center, eventToken, open, onToggle, panelRef, buttonRef, taskProgress, t }: NotificationButtonProps) { - const badgeCount = center.unreadCount + center.pendingCount + center.queueCount; - const progressRatio = taskProgress - ? Math.min(1, taskProgress.completedCount / TASK_BADGE_TARGET) - : 0; - const [activeTab, setActiveTab] = React.useState<'unread' | 'all' | 'status'>(center.unreadCount > 0 ? 'unread' : 'all'); +function NotificationButton({ center, eventToken, open, onToggle, panelRef, buttonRef, t }: NotificationButtonProps) { + const badgeCount = center.unreadCount; + const [activeTab, setActiveTab] = React.useState<'unread' | 'all' | 'uploads'>(center.unreadCount > 0 ? 'unread' : 'all'); const [scopeFilter, setScopeFilter] = React.useState<'all' | 'tips' | 'general'>('all'); const pushState = usePushSubscription(eventToken); @@ -321,7 +314,7 @@ function NotificationButton({ center, eventToken, open, onToggle, panelRef, butt case 'unread': base = unreadNotifications; break; - case 'status': + case 'uploads': base = uploadNotifications; break; default: @@ -331,7 +324,7 @@ function NotificationButton({ center, eventToken, open, onToggle, panelRef, butt }, [activeTab, center.notifications, unreadNotifications, uploadNotifications]); const scopedNotifications = React.useMemo(() => { - if (scopeFilter === 'all') { + if (activeTab === 'uploads' || scopeFilter === 'all') { return filteredNotifications; } return filteredNotifications.filter((item) => { @@ -365,10 +358,10 @@ function NotificationButton({ center, eventToken, open, onToggle, panelRef, butt >

-

{t('header.notifications.title', 'Benachrichtigungen')}

+

{t('header.notifications.title', 'Updates')}

{center.unreadCount > 0 - ? t('header.notifications.unread', { defaultValue: '{{count}} neu', count: center.unreadCount }) + ? t('header.notifications.unread', { defaultValue: '{count} neu', count: center.unreadCount }) : t('header.notifications.allRead', 'Alles gelesen')}

@@ -384,67 +377,43 @@ function NotificationButton({ center, eventToken, open, onToggle, panelRef, butt
setActiveTab(next as typeof activeTab)} /> -
-
- {( - [ - { key: 'all', label: t('header.notifications.scope.all', 'Alle') }, - { key: 'tips', label: t('header.notifications.scope.tips', 'Tipps & Achievements') }, - { key: 'general', label: t('header.notifications.scope.general', 'Allgemein') }, - ] as const - ).map((option) => ( - - ))} + {activeTab !== 'uploads' && ( +
+
+ {( + [ + { key: 'all', label: t('header.notifications.scope.all', 'Alle') }, + { key: 'tips', label: t('header.notifications.scope.tips', 'Tipps & Achievements') }, + { key: 'general', label: t('header.notifications.scope.general', 'Allgemein') }, + ] as const + ).map((option) => ( + + ))} +
-
-
- {center.loading ? ( - - ) : scopedNotifications.length === 0 ? ( - - ) : ( - scopedNotifications.map((item) => ( - center.markAsRead(item.id)} - onDismiss={() => center.dismiss(item.id)} - t={t} - /> - )) - )} -
- {activeTab === 'status' && ( + )} + {activeTab === 'uploads' && (center.pendingCount > 0 || center.queueCount > 0) && (
{center.pendingCount > 0 && (
@@ -478,30 +447,32 @@ function NotificationButton({ center, eventToken, open, onToggle, panelRef, butt )}
)} - {taskProgress && ( -
-
-
-

{t('header.notifications.badgeLabel', 'Badge-Fortschritt')}

-

- {taskProgress.completedCount}/{TASK_BADGE_TARGET} -

-
- - {t('header.notifications.tasksCta', 'Weiter')} - -
-
-
+ {center.loading ? ( + + ) : scopedNotifications.length === 0 ? ( + + ) : ( + scopedNotifications.map((item) => ( + center.markAsRead(item.id)} + onDismiss={() => center.dismiss(item.id)} + t={t} /> -
-
- )} + )) + )} +
({ queueItems: [], queueCount: 0, pendingCount: 0, - totalCount: 0, loading: false, pendingLoading: false, refresh: vi.fn(), @@ -97,10 +96,10 @@ describe('Header notifications toggle', () => { const bellButton = screen.getByLabelText('Benachrichtigungen anzeigen'); fireEvent.click(bellButton); - expect(screen.getByText('Benachrichtigungen')).toBeInTheDocument(); + expect(screen.getByText('Updates')).toBeInTheDocument(); fireEvent.click(bellButton); - expect(screen.queryByText('Benachrichtigungen')).not.toBeInTheDocument(); + expect(screen.queryByText('Updates')).not.toBeInTheDocument(); }); }); diff --git a/resources/js/guest/context/NotificationCenterContext.tsx b/resources/js/guest/context/NotificationCenterContext.tsx index 817b8f0..ef023c0 100644 --- a/resources/js/guest/context/NotificationCenterContext.tsx +++ b/resources/js/guest/context/NotificationCenterContext.tsx @@ -16,7 +16,6 @@ export type NotificationCenterValue = { queueItems: QueueItem[]; queueCount: number; pendingCount: number; - totalCount: number; loading: boolean; pendingLoading: boolean; refresh: () => Promise; @@ -264,11 +263,9 @@ export function NotificationCenterProvider({ eventToken, children }: { eventToke }, [loadNotifications, refreshQueue, loadPendingUploads]); const loading = loadingNotifications || queueLoading || pendingLoading; - const totalCount = unreadCount + queueCount + pendingCount; - React.useEffect(() => { - void updateAppBadge(totalCount); - }, [totalCount]); + void updateAppBadge(unreadCount); + }, [unreadCount]); const value: NotificationCenterValue = { notifications, @@ -276,7 +273,6 @@ export function NotificationCenterProvider({ eventToken, children }: { eventToke queueItems: items, queueCount, pendingCount, - totalCount, loading, pendingLoading, refresh, diff --git a/resources/js/guest/i18n/messages.ts b/resources/js/guest/i18n/messages.ts index 6a8291f..83b15ec 100644 --- a/resources/js/guest/i18n/messages.ts +++ b/resources/js/guest/i18n/messages.ts @@ -42,7 +42,13 @@ export const messages: Record = { }, helpGallery: 'Hilfe zu Galerie & Teilen', notifications: { - tabStatus: 'Upload-Status', + title: 'Updates', + unread: '{count} neu', + allRead: 'Alles gelesen', + tabUnread: 'Nachrichten', + tabUploads: 'Uploads', + tabAll: 'Alle Updates', + emptyStatus: 'Keine Upload-Hinweise oder Wartungen aktiv.', }, }, liveShowPlayer: { @@ -774,7 +780,13 @@ export const messages: Record = { }, helpGallery: 'Help: Gallery & sharing', notifications: { - tabStatus: 'Upload status', + title: 'Updates', + unread: '{count} new', + allRead: 'All read', + tabUnread: 'Messages', + tabUploads: 'Uploads', + tabAll: 'All updates', + emptyStatus: 'No upload status or maintenance active.', }, }, liveShowPlayer: { diff --git a/tests/Feature/Tenant/PhotoModerationControllerTest.php b/tests/Feature/Tenant/PhotoModerationControllerTest.php new file mode 100644 index 0000000..567125e --- /dev/null +++ b/tests/Feature/Tenant/PhotoModerationControllerTest.php @@ -0,0 +1,26 @@ +for($this->tenant)->create([ + 'slug' => 'moderation-event', + ]); + $photo = Photo::factory()->for($event)->create([ + 'status' => 'pending', + ]); + + $response = $this->authenticatedRequest('PATCH', "/api/v1/tenant/events/{$event->slug}/photos/{$photo->id}", [ + 'status' => 'approved', + ]); + + $response->assertOk(); + $this->assertSame('approved', $photo->refresh()->status); + } +} diff --git a/tests/Unit/SendPhotoUploadedNotificationTest.php b/tests/Unit/SendPhotoUploadedNotificationTest.php new file mode 100644 index 0000000..2fc38bf --- /dev/null +++ b/tests/Unit/SendPhotoUploadedNotificationTest.php @@ -0,0 +1,144 @@ +create(); + $listener = $this->app->make(SendPhotoUploadedNotification::class); + + GuestNotification::factory()->create([ + 'tenant_id' => $event->tenant_id, + 'event_id' => $event->id, + 'type' => GuestNotificationType::PHOTO_ACTIVITY, + 'title' => 'Fotospiel-Test hat gerade ein Foto gemacht 🎉', + 'payload' => [ + 'photo_id' => 123, + 'photo_ids' => [123], + 'count' => 1, + ], + 'created_at' => now()->subSeconds(5), + 'updated_at' => now()->subSeconds(5), + ]); + + $listener->handle(new GuestPhotoUploaded( + $event, + 123, + 'device-123', + 'Fotospiel-Test' + )); + + $notification = GuestNotification::query() + ->where('event_id', $event->id) + ->where('type', GuestNotificationType::PHOTO_ACTIVITY) + ->first(); + + $this->assertSame(1, GuestNotification::query() + ->where('event_id', $event->id) + ->where('type', GuestNotificationType::PHOTO_ACTIVITY) + ->count()); + $this->assertSame(1, (int) ($notification?->payload['count'] ?? 0)); + } + + public function test_it_groups_recent_photo_activity_notifications(): void + { + Carbon::setTestNow('2026-01-12 13:48:01'); + + $event = Event::factory()->create(); + $listener = $this->app->make(SendPhotoUploadedNotification::class); + + GuestNotification::factory()->create([ + 'tenant_id' => $event->tenant_id, + 'event_id' => $event->id, + 'type' => GuestNotificationType::PHOTO_ACTIVITY, + 'title' => 'Fotospiel-Test hat gerade ein Foto gemacht 🎉', + 'payload' => [ + 'photo_id' => 122, + 'photo_ids' => [122], + 'count' => 1, + ], + 'created_at' => now()->subMinutes(5), + 'updated_at' => now()->subMinutes(5), + ]); + + $listener->handle(new GuestPhotoUploaded( + $event, + 123, + 'device-123', + 'Fotospiel-Test' + )); + + $this->assertSame(1, GuestNotification::query() + ->where('event_id', $event->id) + ->where('type', GuestNotificationType::PHOTO_ACTIVITY) + ->count()); + + $notification = GuestNotification::query() + ->where('event_id', $event->id) + ->where('type', GuestNotificationType::PHOTO_ACTIVITY) + ->first(); + + $this->assertSame('Es gibt 2 neue Fotos!', $notification?->title); + $this->assertSame(2, (int) ($notification?->payload['count'] ?? 0)); + + $this->assertSame(1, GuestNotificationReceipt::query() + ->where('guest_identifier', 'device-123') + ->where('status', 'read') + ->count()); + } + + public function test_it_creates_notification_outside_group_window(): void + { + Carbon::setTestNow('2026-01-12 13:48:01'); + + $event = Event::factory()->create(); + $listener = $this->app->make(SendPhotoUploadedNotification::class); + + GuestNotification::factory()->create([ + 'tenant_id' => $event->tenant_id, + 'event_id' => $event->id, + 'type' => GuestNotificationType::PHOTO_ACTIVITY, + 'title' => 'Fotospiel-Test hat gerade ein Foto gemacht 🎉', + 'payload' => [ + 'photo_id' => 122, + 'photo_ids' => [122], + 'count' => 1, + ], + 'created_at' => now()->subMinutes(20), + 'updated_at' => now()->subMinutes(20), + ]); + + $listener->handle(new GuestPhotoUploaded( + $event, + 123, + 'device-123', + 'Fotospiel-Test' + )); + + $this->assertSame(2, GuestNotification::query() + ->where('event_id', $event->id) + ->where('type', GuestNotificationType::PHOTO_ACTIVITY) + ->count()); + + $this->assertSame(1, GuestNotificationReceipt::query() + ->where('guest_identifier', 'device-123') + ->where('status', 'read') + ->count()); + } +}