Fix json_decode in Twig - decode in controller instead
This commit is contained in:
parent
e20354e89d
commit
393edebee6
|
|
@ -152,6 +152,12 @@ class ServerController extends Model
|
||||||
$stmt->execute([':server_id' => $id]);
|
$stmt->execute([':server_id' => $id]);
|
||||||
$allMetrics = $stmt->fetchAll();
|
$allMetrics = $stmt->fetchAll();
|
||||||
|
|
||||||
|
// Декодируем сохранённые метрики
|
||||||
|
$savedMetrics = [];
|
||||||
|
if (!empty($server['display_metrics'])) {
|
||||||
|
$savedMetrics = json_decode($server['display_metrics'], true) ?? [];
|
||||||
|
}
|
||||||
|
|
||||||
if (!$server) {
|
if (!$server) {
|
||||||
return $response->withHeader('Location', '/servers')->withStatus(302);
|
return $response->withHeader('Location', '/servers')->withStatus(302);
|
||||||
}
|
}
|
||||||
|
|
@ -161,7 +167,8 @@ class ServerController extends Model
|
||||||
'server' => $server,
|
'server' => $server,
|
||||||
'groups' => $groups,
|
'groups' => $groups,
|
||||||
'agent_token' => $decryptedToken,
|
'agent_token' => $decryptedToken,
|
||||||
'allMetrics' => $allMetrics
|
'allMetrics' => $allMetrics,
|
||||||
|
'server_display_metrics' => $savedMetrics
|
||||||
];
|
];
|
||||||
|
|
||||||
return $this->twig->render($response, 'servers/edit.twig', $templateData);
|
return $this->twig->render($response, 'servers/edit.twig', $templateData);
|
||||||
|
|
|
||||||
|
|
@ -45,7 +45,7 @@
|
||||||
<p class="text-muted small">Выберите метрики, которые будут показываться на графиках. Пустой выбор = все метрики.</p>
|
<p class="text-muted small">Выберите метрики, которые будут показываться на графиках. Пустой выбор = все метрики.</p>
|
||||||
|
|
||||||
<div class="row mb-3">
|
<div class="row mb-3">
|
||||||
{% set savedMetrics = server.display_metrics|json_decode ?: [] %}
|
{% set savedMetrics = server_display_metrics ?: [] %}
|
||||||
{% for metric in allMetrics %}
|
{% for metric in allMetrics %}
|
||||||
<div class="col-md-4 col-lg-3 mb-2">
|
<div class="col-md-4 col-lg-3 mb-2">
|
||||||
<div class="form-check">
|
<div class="form-check">
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue