From 7fb85314e55862b01f8ad612f20b81babaf7cb37 Mon Sep 17 00:00:00 2001 From: Andras Bacsai <5845193+andrasbacsai@users.noreply.github.com> Date: Wed, 25 Jun 2025 11:45:55 +0200 Subject: [PATCH] refactor(invitation): rename methods for consistency and enhance invitation deletion logic --- app/Http/Controllers/Controller.php | 2 +- app/Livewire/Team/Invitations.php | 12 ++++++++++-- app/Livewire/Team/InviteLink.php | 6 +++--- resources/views/livewire/tags/show.blade.php | 2 +- resources/views/livewire/team/admin-view.blade.php | 4 ++-- routes/web.php | 2 +- 6 files changed, 18 insertions(+), 10 deletions(-) diff --git a/app/Http/Controllers/Controller.php b/app/Http/Controllers/Controller.php index 14a2950af..09007ad96 100644 --- a/app/Http/Controllers/Controller.php +++ b/app/Http/Controllers/Controller.php @@ -144,7 +144,7 @@ public function acceptInvitation() } } - public function revoke_invitation() + public function revokeInvitation() { $invitation = TeamInvitation::whereUuid(request()->route('uuid'))->firstOrFail(); $user = User::whereEmail($invitation->email)->firstOrFail(); diff --git a/app/Livewire/Team/Invitations.php b/app/Livewire/Team/Invitations.php index 93432efc8..6dc3fce25 100644 --- a/app/Livewire/Team/Invitations.php +++ b/app/Livewire/Team/Invitations.php @@ -3,6 +3,7 @@ namespace App\Livewire\Team; use App\Models\TeamInvitation; +use App\Models\User; use Livewire\Component; class Invitations extends Component @@ -14,8 +15,15 @@ class Invitations extends Component public function deleteInvitation(int $invitation_id) { try { - $initiation_found = TeamInvitation::ownedByCurrentTeam()->findOrFail($invitation_id); - $initiation_found->delete(); + $invitation = TeamInvitation::ownedByCurrentTeam()->findOrFail($invitation_id); + $user = User::whereEmail($invitation->email)->firstOrFail(); + $emailVerified = $user->hasVerifiedEmail(); + $forcePasswordReset = $user->force_password_reset; + if ($emailVerified === false && $forcePasswordReset === true) { + $user->delete(); + } + + $invitation->delete(); $this->refreshInvitations(); $this->dispatch('success', 'Invitation revoked.'); } catch (\Exception) { diff --git a/app/Livewire/Team/InviteLink.php b/app/Livewire/Team/InviteLink.php index 25f8a1ff5..fb0c51e54 100644 --- a/app/Livewire/Team/InviteLink.php +++ b/app/Livewire/Team/InviteLink.php @@ -29,15 +29,15 @@ public function mount() public function viaEmail() { - $this->generate_invite_link(sendEmail: true); + $this->generateInviteLink(sendEmail: true); } public function viaLink() { - $this->generate_invite_link(sendEmail: false); + $this->generateInviteLink(sendEmail: false); } - private function generate_invite_link(bool $sendEmail = false) + private function generateInviteLink(bool $sendEmail = false) { try { $this->validate(); diff --git a/resources/views/livewire/tags/show.blade.php b/resources/views/livewire/tags/show.blade.php index 7cd273fcb..82927a490 100644 --- a/resources/views/livewire/tags/show.blade.php +++ b/resources/views/livewire/tags/show.blade.php @@ -1,7 +1,7 @@