From cd185d31b9e6816f0cb8af22bc2c2a96fb8422c3 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Fri, 4 Apr 2025 11:47:03 +1100 Subject: [PATCH] Refactors for client portal --- .../Controllers/Auth/ContactLoginController.php | 2 +- .../ClientPortal/InvitationController.php | 16 ++++++++++++---- .../ClientPortal/SwitchCompanyController.php | 4 +++- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/app/Http/Controllers/Auth/ContactLoginController.php b/app/Http/Controllers/Auth/ContactLoginController.php index 2f7ac68fde..aa0cd56ef4 100644 --- a/app/Http/Controllers/Auth/ContactLoginController.php +++ b/app/Http/Controllers/Auth/ContactLoginController.php @@ -182,7 +182,7 @@ class ContactLoginController extends Controller { Auth::guard('contact')->logout(); request()->session()->invalidate(); - request()->session()->regenerate(); + request()->session()->regenerate(true); request()->session()->regenerateToken(); return redirect('/client/login'); diff --git a/app/Http/Controllers/ClientPortal/InvitationController.php b/app/Http/Controllers/ClientPortal/InvitationController.php index 63cb9a362c..756c23ed47 100644 --- a/app/Http/Controllers/ClientPortal/InvitationController.php +++ b/app/Http/Controllers/ClientPortal/InvitationController.php @@ -237,17 +237,21 @@ class InvitationController extends Controller $contact->password = Hash::make($request->password); $contact->save(); + $is_silent = session()->get('is_silent') ?? false; + $request->session()->invalidate(); + request()->session()->regenerate(true); + request()->session()->regenerateToken(); auth()->guard('contact')->loginUsingId($contact->id, true); if (! $invitation->viewed_date) { $invitation->markViewed(); - if (! session()->get('is_silent')) { + if (! $is_silent) { event(new InvitationWasViewed($invitation->{$request->entity_type}, $invitation, $invitation->{$request->entity_type}->company, Ninja::eventVars())); } - if (! session()->get('is_silent')) { + if (! $is_silent) { $this->fireEntityViewedEvent($invitation, $request->entity_type); } } @@ -268,6 +272,7 @@ class InvitationController extends Controller } request()->session()->invalidate(); + request()->session()->regenerate(true); request()->session()->regenerateToken(); auth()->guard('contact')->loginUsingId($contact->id, true); @@ -286,7 +291,10 @@ class InvitationController extends Controller $invitation->contact->restore(); } + $is_silent = session()->get('is_silent') ?? false; + request()->session()->invalidate(); + request()->session()->regenerate(true); request()->session()->regenerateToken(); auth()->guard('contact')->loginUsingId($invitation->contact->id, true); @@ -295,14 +303,14 @@ class InvitationController extends Controller if (! $invitation->viewed_date) { $invitation->markViewed(); - if (!session()->get('is_silent')) { + if (! $is_silent) { event(new InvitationWasViewed($invitation->invoice, $invitation, $invitation->invoice->company, Ninja::eventVars())); $this->fireEntityViewedEvent($invitation, $invoice); } } - if (!session()->get('is_silent')) { + if (! $is_silent) { event(new ContactLoggedIn($invitation->contact, $invitation->contact->company, Ninja::eventVars())); } diff --git a/app/Http/Controllers/ClientPortal/SwitchCompanyController.php b/app/Http/Controllers/ClientPortal/SwitchCompanyController.php index e09561c296..87d207f3bf 100644 --- a/app/Http/Controllers/ClientPortal/SwitchCompanyController.php +++ b/app/Http/Controllers/ClientPortal/SwitchCompanyController.php @@ -29,7 +29,9 @@ class SwitchCompanyController extends Controller auth()->guard('contact')->loginUsingId($client_contact->id, true); - request()->session()->regenerate(); + request()->session()->invalidate(); + request()->session()->regenerate(true); + request()->session()->regenerateToken(); return redirect('/client/dashboard'); }