From 7d4d18143d4db9a996b91bc38938cbadbbdab5c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20Pocrnji=C4=8D?= Date: Thu, 30 Oct 2025 20:03:40 +0100 Subject: [PATCH] Notifications changes so they are not filtered by user --- app/Http/Controllers/NotificationController.php | 14 ++------------ app/Http/Middleware/HandleInertiaRequests.php | 7 +------ 2 files changed, 3 insertions(+), 18 deletions(-) diff --git a/app/Http/Controllers/NotificationController.php b/app/Http/Controllers/NotificationController.php index 56838af..657738a 100644 --- a/app/Http/Controllers/NotificationController.php +++ b/app/Http/Controllers/NotificationController.php @@ -35,12 +35,7 @@ public function unread(Request $request) ->select(['id', 'due_date', 'amount', 'contract_id', 'client_case_id', 'created_at']) ->whereNotNull('due_date') ->whereDate('due_date', '<=', $today) - ->whereNotExists(function ($q) use ($user) { - $q->from('activity_notification_reads as anr') - ->whereColumn('anr.activity_id', 'activities.id') - ->where('anr.user_id', $user->id) - ->whereColumn('anr.due_date', 'activities.due_date'); - }) + // Removed per-user unread filter: show notifications regardless of individual reads ->when($clientCaseIdsForFilter->isNotEmpty(), function ($q) use ($clientCaseIdsForFilter) { // Filter by clients: activities directly on any of the client's cases OR via contracts under those cases $q->where(function ($qq) use ($clientCaseIdsForFilter) { @@ -113,12 +108,7 @@ public function unread(Request $request) ->select(['contract_id', 'client_case_id']) ->whereNotNull('due_date') ->whereDate('due_date', '<=', $today) - ->whereNotExists(function ($q) use ($user) { - $q->from('activity_notification_reads as anr') - ->whereColumn('anr.activity_id', 'activities.id') - ->where('anr.user_id', $user->id) - ->whereColumn('anr.due_date', 'activities.due_date'); - }) + // Removed per-user unread filter for client list base ->when($clientCaseIdsForFilter->isNotEmpty(), function ($q) use ($clientCaseIdsForFilter) { $q->where(function ($qq) use ($clientCaseIdsForFilter) { $qq->whereIn('activities.client_case_id', $clientCaseIdsForFilter) diff --git a/app/Http/Middleware/HandleInertiaRequests.php b/app/Http/Middleware/HandleInertiaRequests.php index 563808b..eced01e 100644 --- a/app/Http/Middleware/HandleInertiaRequests.php +++ b/app/Http/Middleware/HandleInertiaRequests.php @@ -71,12 +71,7 @@ public function share(Request $request): array $activities = \App\Models\Activity::query() ->select(['id', 'due_date', 'amount', 'contract_id', 'client_case_id', 'created_at']) ->whereDate('due_date', $today) - ->whereNotExists(function ($q) use ($request) { - $q->from('activity_notification_reads as anr') - ->whereColumn('anr.activity_id', 'activities.id') - ->where('anr.user_id', optional($request->user())->id) - ->whereColumn('anr.due_date', 'activities.due_date'); - }) + // Removed per-user unread filter: show notifications regardless of individual reads ->orderBy('created_at') ->limit(20) ->get();