SSR control center: English UI strings throughout

Widgets, backend module template and flash messages now match the rest of the backend, which is English.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
orascheandClaude Fable 5 committed 2026-11-09 21:03:40 +01:00
1 parent 91c2ceb5b1
commit fa63871da7
5 files changed
+52 -52

No files matched your search

@@ -1,75 +1,75 @@
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers" data-namespace-typo3-fluid="true">
<h1>VITEC SSR — Steuerung &amp; Protokoll</h1>
<h1>VITEC SSR — Control &amp; Protocol</h1>
<div class="row">
<div class="col-md-6">
<h3>Status</h3>
<table class="table table-striped">
<tr>
<th>SSR-Auslieferung</th>
<th>SSR delivery</th>
<td>
<f:if condition="{flagOn}">
<f:then><span class="badge badge-success">AN — Seiten kommen vom VPS</span></f:then>
<f:else><span class="badge badge-secondary">AUS — SPA wie bisher</span></f:else>
<f:then><span class="badge badge-success">ON — pages served from the VPS</span></f:then>
<f:else><span class="badge badge-secondary">OFF — SPA as before</span></f:else>
</f:if>
<br><small>Umschalten: Site Management &rsaquo; Settings &rsaquo; VITEC</small>
<br><small>Toggle: Site Management &rsaquo; Settings &rsaquo; VITEC</small>
</td>
</tr>
<tr>
<th>SSR-Server</th>
<th>SSR server</th>
<td>
<f:if condition="{health}">
<f:then>
<span class="badge badge-success">läuft</span> {health.responseMs} ms<br>
<span class="badge badge-success">running</span> {health.responseMs} ms<br>
Release <strong>{health.release.release}</strong>
(Commit {health.release.commit})<br>
Cache: {health.cachedPages} Seiten / {health.cacheMB} MB
(commit {health.release.commit})<br>
Cache: {health.cachedPages} pages / {health.cacheMB} MB
</f:then>
<f:else>
<span class="badge badge-danger">nicht erreichbar</span> {healthError}
<span class="badge badge-danger">not reachable</span> {healthError}
</f:else>
</f:if>
</td>
</tr>
<tr>
<th>Purge-Konfiguration</th>
<th>Purge configuration</th>
<td>
<f:if condition="{configured}">
<f:then><span class="badge badge-success">ok</span></f:then>
<f:else><span class="badge badge-warning">var/vitec-ssr-purge.env fehlt</span></f:else>
<f:else><span class="badge badge-warning">var/vitec-ssr-purge.env missing</span></f:else>
</f:if>
</td>
</tr>
</table>
</div>
<div class="col-md-6">
<h3>Cache leeren (Purge)</h3>
<h3>Purge cache</h3>
<form action="{f:be.uri(route: 'web_vitecssr.purge')}" method="post" class="form-group">
<label for="purge-paths">Pfade (einer je Zeile oder kommagetrennt):</label>
<label for="purge-paths">Paths (one per line or comma-separated):</label>
<textarea class="form-control" id="purge-paths" name="paths" rows="3"
placeholder="/products/aligo&#10;/insights/news"></textarea>
<input type="hidden" name="mode" value="paths">
<div style="margin-top:8px">
<button type="submit" class="btn btn-primary">Diese Pfade purgen</button>
<button type="submit" class="btn btn-primary">Purge these paths</button>
</div>
</form>
<form action="{f:be.uri(route: 'web_vitecssr.purge')}" method="post"
onsubmit="return confirm('Wirklich den KOMPLETTEN SSR-Cache leeren?');">
onsubmit="return confirm('Really purge the ENTIRE SSR cache?');">
<input type="hidden" name="mode" value="all">
<button type="submit" class="btn btn-warning">Alles purgen (*)</button>
<small class="text-muted"> — nötig nach Menü-/Footer-Änderungen bei abgeschaltetem Auto-Purge</small>
<button type="submit" class="btn btn-warning">Purge everything (*)</button>
<small class="text-muted"> — needed after menu/footer changes while auto-purge is off</small>
</form>
</div>
</div>
<h3>Purge-Protokoll <small>(letzte 30)</small></h3>
<h3>Purge protocol <small>(last 30)</small></h3>
<table class="table table-striped table-sm">
<thead><tr><th>Zeit</th><th>Auslöser</th><th>Pfade</th><th>Ergebnis</th><th>Dauer</th></tr></thead>
<thead><tr><th>Time</th><th>Trigger</th><th>Paths</th><th>Result</th><th>Duration</th></tr></thead>
<tbody>
<f:for each="{purgeLog}" as="row">
<tr>
<td><f:format.date format="d.m.Y H:i:s">@{row.crdate}</f:format.date></td>
<td><f:format.date format="Y-m-d H:i:s">@{row.crdate}</f:format.date></td>
<td>{row.trigger_source}</td>
<td><code>{row.paths}</code></td>
<td>
@@ -84,13 +84,13 @@
</tbody>
</table>
<h3>Gesundheits-Messungen <small>(letzte 10 — Historie via Scheduler-Task <code>vitec:ssr-health</code>)</small></h3>
<h3>Health samples <small>(last 10 — history via cron <code>vitec:ssr-health</code>, every 5 minutes)</small></h3>
<table class="table table-striped table-sm">
<thead><tr><th>Zeit</th><th>Status</th><th>Release</th><th>Cache</th><th>Antwortzeit</th></tr></thead>
<thead><tr><th>Time</th><th>Status</th><th>Release</th><th>Cache</th><th>Response time</th></tr></thead>
<tbody>
<f:for each="{healthLog}" as="row">
<tr>
<td><f:format.date format="d.m.Y H:i:s">@{row.crdate}</f:format.date></td>
<td><f:format.date format="Y-m-d H:i:s">@{row.crdate}</f:format.date></td>
<td>
<f:if condition="{row.ok}">
<f:then><span class="badge badge-success">ok</span></f:then>
@@ -98,7 +98,7 @@
</f:if>
</td>
<td>{row.release_id}</td>
<td>{row.cached_pages} Seiten / {row.cache_mb} MB</td>
<td>{row.cached_pages} pages / {row.cache_mb} MB</td>
<td>{row.response_ms} ms</td>
</tr>
</f:for>