From 1a66b3fab466723ac1a34e5d05dd91341d9008b8 Mon Sep 17 00:00:00 2001 From: Boy132 Date: Thu, 13 Nov 2025 19:05:23 +0100 Subject: [PATCH] Encode file contents to utf-8 (#1896) --- app/Filament/Admin/Resources/Servers/Pages/EditServer.php | 4 +++- app/Filament/Server/Resources/Files/Pages/EditFiles.php | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/app/Filament/Admin/Resources/Servers/Pages/EditServer.php b/app/Filament/Admin/Resources/Servers/Pages/EditServer.php index ef20080fc..59f1cee88 100644 --- a/app/Filament/Admin/Resources/Servers/Pages/EditServer.php +++ b/app/Filament/Admin/Resources/Servers/Pages/EditServer.php @@ -155,7 +155,9 @@ class EditServer extends EditRecord ->hiddenLabel() ->formatStateUsing(function (Server $server, DaemonServerRepository $serverRepository) { try { - return $serverRepository->setServer($server)->getInstallLogs(); + $logs = $serverRepository->setServer($server)->getInstallLogs(); + + return mb_convert_encoding($logs, 'UTF-8', ['UTF-8', 'UTF-16', 'ISO-8859-1', 'Windows-1252', 'ASCII']); } catch (ConnectionException) { Notification::make() ->title(trans('admin/server.notifications.error_connecting', ['node' => $server->node->name])) diff --git a/app/Filament/Server/Resources/Files/Pages/EditFiles.php b/app/Filament/Server/Resources/Files/Pages/EditFiles.php index 94c77a197..dda2d28ab 100644 --- a/app/Filament/Server/Resources/Files/Pages/EditFiles.php +++ b/app/Filament/Server/Resources/Files/Pages/EditFiles.php @@ -171,7 +171,9 @@ class EditFiles extends Page ->language(fn (Get $get) => $get('lang')) ->default(function () { try { - return $this->getDaemonFileRepository()->getContent($this->path, config('panel.files.max_edit_size')); + $contents = $this->getDaemonFileRepository()->getContent($this->path, config('panel.files.max_edit_size')); + + return mb_convert_encoding($contents, 'UTF-8', ['UTF-8', 'UTF-16', 'ISO-8859-1', 'Windows-1252', 'ASCII']); } catch (FileSizeTooLargeException) { AlertBanner::make('file_too_large') ->title(trans('server/file.alerts.file_too_large.title', ['name' => basename($this->path)]))