fix(i18n): relative-time strings vollständig lokalisiert

relativeTime() in Dashboard, relTime() in WireGuard Clients+Servers und
CertExpiry() im Cluster-Page haben bisher hardcodiertes Deutsch
(„vor 5s", „abgelaufen vor X Tagen") gerendert, unabhängig von der
gewählten UI-Sprache.

Neu: gemeinsame i18n-Keys common.relTime.{Xs,Xm,Xh,Xd,never} in EN+DE,
sowie cluster.{certDaysRemaining,certExpiredDaysAgo}. Alle Helper-
Funktionen nehmen jetzt t() als Parameter und sind damit sprachunabhängig.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Debian
2026-05-24 12:02:27 +02:00
parent 3c95bc58d9
commit e18037375f
8 changed files with 52 additions and 31 deletions

View File

@@ -436,6 +436,8 @@
"renewSelfConfirm": "Re-sign peer cert with the local CA (1 year)? edgeguard-api restart required after.",
"certRenewedRestartHint": "Cert renewed — please run sudo systemctl restart edgeguard-api.",
"certRenewFailed": "Cert renewal failed",
"certDaysRemaining": "{{n}} days",
"certExpiredDaysAgo": "expired {{n}} d ago",
"removePeerBtn": "Remove",
"removePeerConfirmTitle": "Really remove peer from the cluster?",
"removePeerConfirmDesc": "{{fqdn}} is deleted from ha_nodes. Firewall renderer drops its IP from the peer_ipv4 set. On the peer side edgeguard-api keeps running; manually stop it + delete cluster-tls for a full decommission.",
@@ -910,7 +912,14 @@
"copy": "Copy",
"copied": "Copied",
"close": "Close",
"refresh": "Refresh"
"refresh": "Refresh",
"relTime": {
"Xs": "{{n}}s ago",
"Xm": "{{n}}m ago",
"Xh": "{{n}}h ago",
"Xd": "{{n}}d ago",
"never": "never"
}
},
"license": {
"title": "License",