diff --git a/app/Filament/Resources/ServerResource/Pages/EditServer.php b/app/Filament/Resources/ServerResource/Pages/EditServer.php index 5b5d3726f..9cccbe2dd 100644 --- a/app/Filament/Resources/ServerResource/Pages/EditServer.php +++ b/app/Filament/Resources/ServerResource/Pages/EditServer.php @@ -590,17 +590,17 @@ class EditServer extends EditRecord protected function getHeaderActions(): array { return [ - Actions\Action::make('Force Delete') - ->successRedirectUrl($this->getResource()::getUrl('index')) + Actions\DeleteAction::make('Force Delete') + ->label('Force Delete') + ->successRedirectUrl(route('filament.admin.resources.servers.index')) ->color('danger') - ->action(fn (Server $server) => resolve(ServerDeletionService::class)->withForce()->handle($server)) + ->after(fn (Server $server) => resolve(ServerDeletionService::class)->withForce()->handle($server)) ->requiresConfirmation(), - Actions\Action::make('Delete') - ->successRedirectUrl($this->getResource()::getUrl('index')) + Actions\DeleteAction::make('Delete') + ->successRedirectUrl(route('filament.admin.resources.servers.index')) ->color('danger') - ->action(fn (Server $server) => resolve(ServerDeletionService::class)->handle($server)) + ->after(fn (Server $server) => resolve(ServerDeletionService::class)->handle($server)) ->requiresConfirmation(), - ]; } } diff --git a/app/Services/Servers/ServerDeletionService.php b/app/Services/Servers/ServerDeletionService.php index 85e362ed1..71e9ee19e 100644 --- a/app/Services/Servers/ServerDeletionService.php +++ b/app/Services/Servers/ServerDeletionService.php @@ -44,7 +44,7 @@ class ServerDeletionService { try { $this->daemonServerRepository->setServer($server)->delete(); - } catch (Exception $exception) { + } catch (DaemonConnectionException $exception) { // If there is an error not caused a 404 error and this isn't a forced delete, // go ahead and bail out. We specifically ignore a 404 since that can be assumed // to be a safe error, meaning the server doesn't exist at all on daemon so there @@ -54,6 +54,8 @@ class ServerDeletionService } logger()->warning($exception); + } catch (Exception $exception) { + report($exception); } $this->connection->transaction(function () use ($server) {