From e37e4729601dc57aa980995c35a110db6c7ade26 Mon Sep 17 00:00:00 2001 From: Debian Date: Sun, 24 May 2026 12:20:03 +0200 Subject: [PATCH] fix(i18n): License-Status-Tags + letzte hardkodierte Strings entfernt MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - statusTag() akzeptiert jetzt t als Parameter — Aktiv/Trial/ Abgelaufen/Ungültig gehen durch license.tag* Keys - en+de common.json: license.tagActive/tagTrial/tagExpired/tagInvalid Co-Authored-By: Claude Sonnet 4.6 --- VERSION | 2 +- cmd/edgeguard-api/main.go | 2 +- cmd/edgeguard-ctl/main.go | 2 +- cmd/edgeguard-scheduler/main.go | 2 +- management-ui/src/i18n/locales/de/common.json | 6 +++++- management-ui/src/i18n/locales/en/common.json | 6 +++++- management-ui/src/pages/License/index.tsx | 12 ++++++------ 7 files changed, 20 insertions(+), 12 deletions(-) diff --git a/VERSION b/VERSION index 8cf600f..65ca0f8 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.1.78 +1.1.79 diff --git a/cmd/edgeguard-api/main.go b/cmd/edgeguard-api/main.go index f215f35..2e960de 100644 --- a/cmd/edgeguard-api/main.go +++ b/cmd/edgeguard-api/main.go @@ -60,7 +60,7 @@ import ( usersvc "git.netcell-it.de/projekte/edgeguard-native/internal/services/users" ) -var version = "1.1.78" +var version = "1.1.79" func main() { addr := os.Getenv("EDGEGUARD_API_ADDR") diff --git a/cmd/edgeguard-ctl/main.go b/cmd/edgeguard-ctl/main.go index c7c0bb9..6771342 100644 --- a/cmd/edgeguard-ctl/main.go +++ b/cmd/edgeguard-ctl/main.go @@ -11,7 +11,7 @@ import ( "git.netcell-it.de/projekte/edgeguard-native/internal/services/setup" ) -var version = "1.1.78" +var version = "1.1.79" const usage = `edgeguard-ctl — EdgeGuard CLI diff --git a/cmd/edgeguard-scheduler/main.go b/cmd/edgeguard-scheduler/main.go index d2e1c64..e7a19e8 100644 --- a/cmd/edgeguard-scheduler/main.go +++ b/cmd/edgeguard-scheduler/main.go @@ -35,7 +35,7 @@ import ( "git.netcell-it.de/projekte/edgeguard-native/internal/services/tlscerts" ) -var version = "1.1.78" +var version = "1.1.79" const ( // renewTickInterval — how often we re-evaluate expiring certs. diff --git a/management-ui/src/i18n/locales/de/common.json b/management-ui/src/i18n/locales/de/common.json index 052abc9..e056843 100644 --- a/management-ui/src/i18n/locales/de/common.json +++ b/management-ui/src/i18n/locales/de/common.json @@ -970,7 +970,11 @@ "confirmClearHint": "System fällt auf Trial-Modus zurück, sobald der Schlüssel gelöscht wird.", "lastVerifyFailed": "Letzte Server-Verifizierung fehlgeschlagen", "trialExpiring": "Trial läuft in {{days}} Tag(en) ab", - "trialExpiringHint": "Lizenz aktivieren, bevor die Trial-Periode endet." + "trialExpiringHint": "Lizenz aktivieren, bevor die Trial-Periode endet.", + "tagActive": "Aktiv", + "tagTrial": "Trial", + "tagExpired": "Abgelaufen", + "tagInvalid": "Ungültig" }, "licenseBanner": { "expired": "Lizenz abgelaufen oder ungültig.", diff --git a/management-ui/src/i18n/locales/en/common.json b/management-ui/src/i18n/locales/en/common.json index b0c53b4..1abd747 100644 --- a/management-ui/src/i18n/locales/en/common.json +++ b/management-ui/src/i18n/locales/en/common.json @@ -970,7 +970,11 @@ "confirmClearHint": "The system will fall back to trial-mode once the key is deleted.", "lastVerifyFailed": "Last server verify failed", "trialExpiring": "Trial expires in {{days}} day(s)", - "trialExpiringHint": "Activate a license before the trial period ends." + "trialExpiringHint": "Activate a license before the trial period ends.", + "tagActive": "Active", + "tagTrial": "Trial", + "tagExpired": "Expired", + "tagInvalid": "Invalid" }, "licenseBanner": { "expired": "License expired or invalid.", diff --git a/management-ui/src/pages/License/index.tsx b/management-ui/src/pages/License/index.tsx index 820e582..16eb236 100644 --- a/management-ui/src/pages/License/index.tsx +++ b/management-ui/src/pages/License/index.tsx @@ -36,11 +36,11 @@ function daysUntil(iso?: string): number | null { return Math.ceil(ms / 86_400_000) } -function statusTag(s: LicenseStatus) { - if (s.status === 'active' && s.type === 'trial') return Trial - if (s.status === 'active') return Aktiv - if (s.status === 'expired') return Abgelaufen - if (s.status === 'invalid') return Ungültig +function statusTag(s: LicenseStatus, t: (k: string) => string) { + if (s.status === 'active' && s.type === 'trial') return {t('license.tagTrial')} + if (s.status === 'active') return {t('license.tagActive')} + if (s.status === 'expired') return {t('license.tagExpired')} + if (s.status === 'invalid') return {t('license.tagInvalid')} return {s.status} } @@ -143,7 +143,7 @@ export default function LicensePage() { - {status ? statusTag(status) : '-'} + {status ? statusTag(status, t) : '-'} {status?.payload?.product || (isTrial ? 'Trial' : '-')}