From 03f3d4e96869f71a1119f3cfddb4b7dd20cd39f7 Mon Sep 17 00:00:00 2001 From: Sam D Harris Date: Fri, 12 Nov 2021 10:44:19 +0000 Subject: [PATCH] Ensure middleware and reverse ui uses the correct guard when dealing with multiple guard impersonation --- resources/views/reverse.blade.php | 4 ++-- src/Http/Middleware/Impersonate.php | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/resources/views/reverse.blade.php b/resources/views/reverse.blade.php index c477aab..697f665 100644 --- a/resources/views/reverse.blade.php +++ b/resources/views/reverse.blade.php @@ -26,8 +26,8 @@ " >

- @if( auth()->user()->name ) - {{ __('Impersonating as') }} {{ auth()->user()->name }} + @if( auth($impersonatorGuardName)->user()->name ) + {{ __('Impersonating as') }} {{ auth($impersonatorGuardName)->user()->name }} @endif

diff --git a/src/Http/Middleware/Impersonate.php b/src/Http/Middleware/Impersonate.php index ef0d950..1cdbe08 100644 --- a/src/Http/Middleware/Impersonate.php +++ b/src/Http/Middleware/Impersonate.php @@ -23,11 +23,11 @@ public function handle($request, $next) $response = $next($request); $manager = app('impersonate'); - + $impersonatorGuardName = $manager->getImpersonatorGuardUsingName(); if ( $manager->isImpersonating() && - auth()->check() && + auth($impersonatorGuardName)->check() && ! ($response instanceof RedirectResponse) && @@ -47,7 +47,9 @@ public function handle($request, $next) /** @var Response $response * */ $content = $response->getContent(); - $content .= view('nova-impersonate::reverse')->render(); + $content .= view('nova-impersonate::reverse', [ + 'impersonatorGuardName' => $impersonatorGuardName, + ])->render(); $response->setContent($content); }