From 393edebee62317d2edcf8d4b33ea6ae9f236beb7 Mon Sep 17 00:00:00 2001 From: mirivlad Date: Sat, 25 Apr 2026 19:58:22 +0800 Subject: [PATCH] Fix json_decode in Twig - decode in controller instead --- src/Controllers/ServerController.php | 9 ++++++++- templates/servers/edit.twig | 2 +- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/Controllers/ServerController.php b/src/Controllers/ServerController.php index 226e0a8..53f10ce 100755 --- a/src/Controllers/ServerController.php +++ b/src/Controllers/ServerController.php @@ -152,6 +152,12 @@ class ServerController extends Model $stmt->execute([':server_id' => $id]); $allMetrics = $stmt->fetchAll(); + // Декодируем сохранённые метрики + $savedMetrics = []; + if (!empty($server['display_metrics'])) { + $savedMetrics = json_decode($server['display_metrics'], true) ?? []; + } + if (!$server) { return $response->withHeader('Location', '/servers')->withStatus(302); } @@ -161,7 +167,8 @@ class ServerController extends Model 'server' => $server, 'groups' => $groups, 'agent_token' => $decryptedToken, - 'allMetrics' => $allMetrics + 'allMetrics' => $allMetrics, + 'server_display_metrics' => $savedMetrics ]; return $this->twig->render($response, 'servers/edit.twig', $templateData); diff --git a/templates/servers/edit.twig b/templates/servers/edit.twig index 7adb2eb..c04336a 100755 --- a/templates/servers/edit.twig +++ b/templates/servers/edit.twig @@ -45,7 +45,7 @@

Выберите метрики, которые будут показываться на графиках. Пустой выбор = все метрики.

- {% set savedMetrics = server.display_metrics|json_decode ?: [] %} + {% set savedMetrics = server_display_metrics ?: [] %} {% for metric in allMetrics %}