Feat: confirm server deletion

This commit is contained in:
ayntk-ai
2024-09-04 20:06:22 +02:00
parent 9515bc6162
commit 371fe53911
2 changed files with 29 additions and 7 deletions

View File

@@ -4,6 +4,8 @@ namespace App\Livewire\Server;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use Livewire\Component;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Auth;
class Delete extends Component
{
@@ -11,8 +13,12 @@ class Delete extends Component
public $server;
public function delete()
public function delete($password)
{
if (!Hash::check($password, Auth::user()->password)) {
$this->addError('password', 'The provided password is incorrect.');
return;
}
try {
$this->authorize('delete', $this->server);
if ($this->server->hasDefinedResources()) {

View File

@@ -8,13 +8,29 @@
</div>
@if ($server->definedResources()->count() > 0)
<div class="pb-2 text-red-500">You need to delete all resources before deleting this server.</div>
<x-modal-confirmation disabled isErrorButton buttonTitle="Delete">
This server will be deleted. It is not reversible. <br>Please think again.
</x-modal-confirmation>
<x-modal-confirmation
title="Confirm Server Deletion?"
isErrorButton
buttonTitle="Delete"
submitAction="delete"
:actions="['This server will be permanently deleted.']"
confirmationText="{{ $server->name }}"
confirmationLabel="Please confirm the execution of the actions by entering the Server Name below"
shortConfirmationLabel="Server Name"
step3ButtonText="Permanently Delete Server"
/>
@else
<x-modal-confirmation isErrorButton buttonTitle="Delete">
This server will be deleted. It is not reversible. <br>Please think again.
</x-modal-confirmation>
<x-modal-confirmation
title="Confirm Server Deletion?"
isErrorButton
buttonTitle="Delete"
submitAction="delete"
:actions="['This server will be permanently deleted.']"
confirmationText="{{ $server->name }}"
confirmationLabel="Please confirm the execution of the actions by entering the Server Name below"
shortConfirmationLabel="Server Name"
step2ButtonText="Permanently Delete Server"
/>
@endif
@endif
</div>