From 862a17ab4efce27fd6906d1b1ca9c5720db085de Mon Sep 17 00:00:00 2001 From: Pablo Zmdl Date: Fri, 20 Feb 2026 14:22:57 +0100 Subject: [PATCH] Auto-reload the log view, and scroll to bottom. Includes a button to disable the automatic reloading (useful when inspecting some lines in the middle). Signed-off-by: Pablo Zmdl --- php/src/Controller/DockerController.php | 10 +++----- php/templates/log.twig | 32 +++++++++++++++++++++++++ 2 files changed, 35 insertions(+), 7 deletions(-) create mode 100644 php/templates/log.twig diff --git a/php/src/Controller/DockerController.php b/php/src/Controller/DockerController.php index a8d1b31b..5cbced40 100644 --- a/php/src/Controller/DockerController.php +++ b/php/src/Controller/DockerController.php @@ -11,6 +11,7 @@ use Psr\Http\Message\ResponseInterface as Response; use Psr\Http\Message\ServerRequestInterface as Request; use AIO\Data\ConfigurationManager; use Slim\Psr7\NonBufferedBody; +use Slim\Views\Twig; readonly class DockerController { private const string TOP_CONTAINER = 'nextcloud-aio-apache'; @@ -76,13 +77,8 @@ readonly class DockerController { $logs = 'Container not found.'; } - $body = $response->getBody(); - $body->write($logs); - - return $response - ->withStatus(200) - ->withHeader('Content-Type', 'text/plain; charset=utf-8') - ->withHeader('Content-Disposition', 'inline'); + $view = Twig::fromRequest($request); + return $view->render($response, 'log.twig', ['logContent' => $logs]); } public function StartBackupContainerBackup(Request $request, Response $response, array $args) : Response { diff --git a/php/templates/log.twig b/php/templates/log.twig new file mode 100644 index 00000000..c14c9e9f --- /dev/null +++ b/php/templates/log.twig @@ -0,0 +1,32 @@ + + + + + + + +
{{ logContent }}
+
+ +