From 1869821c7ef8fa0a31091a2732d12d51344e2e59 Mon Sep 17 00:00:00 2001 From: Alex Popa Date: Fri, 10 Jan 2025 16:03:40 +0200 Subject: [PATCH] Notification for inactive user --- app/Http/Middleware/EnsureUserIsActive.php | 14 +++++++++++--- lang/ro/user.php | 5 +++++ 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/app/Http/Middleware/EnsureUserIsActive.php b/app/Http/Middleware/EnsureUserIsActive.php index 66117685..24401890 100644 --- a/app/Http/Middleware/EnsureUserIsActive.php +++ b/app/Http/Middleware/EnsureUserIsActive.php @@ -12,6 +12,7 @@ use App\Models\UserStatus; use Closure; use Filament\Facades\Filament; +use Filament\Notifications\Notification; use Illuminate\Database\Eloquent\Builder; use Illuminate\Http\RedirectResponse; use Illuminate\Http\Request; @@ -39,7 +40,6 @@ public function handle(Request $request, Closure $next): Response ) ->first(); -// dd($activeOrganization); if ($activeOrganization) { auth()->user()->update(['latest_organization_id' => $activeOrganization->organization_id]); @@ -52,8 +52,16 @@ public function handle(Request $request, Closure $next): Response $request->session()->invalidate(); $request->session()->regenerateToken(); - return redirect()->to(Filament::getCurrentPanel()->getLoginUrl()) - ->with('error', __('user.inactive_error')); + Notification::make() + ->title(__('user.inactive_error.title', [ + 'seconds' => 10, + ])) + ->body(\array_key_exists('body', __('user.inactive_error') ?: []) ? __('user.inactive_error.body', [ + 'seconds' => 10, + ]) : null) + ->danger()->send(); + + return redirect()->to(Filament::getCurrentPanel()->getLoginUrl()); } public function userAndInstitutionIsActive(): bool|RedirectResponse diff --git a/lang/ro/user.php b/lang/ro/user.php index f101cd00..5a71c86f 100644 --- a/lang/ro/user.php +++ b/lang/ro/user.php @@ -94,4 +94,9 @@ 'active' => 'Activ', 'inactive' => 'Inactiv', ], + + 'inactive_error' => [ + 'title' => 'Contul tău nu este activ.', + 'body' => 'Contul tău nu este activ. Pentru mai multe detalii te rugăm să contactezi un administrator.', + ], ];