feat: add password confirmation to register + fix i18n hardcoded strings

- Add confirmPassword field to registration form with Zod validation
- Replace ~30 hardcoded French/English strings in admin-settings-form
  with proper t() i18n calls (Ollama models, Custom models, search test)
- Extract SettingsHeader to client component for i18n support
- Add 15 i18n keys to all 15 locale files (auth + admin.ai + admin.tools)
- Remove debug "Config value" line from embeddings section

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-04-26 19:59:38 +02:00
parent bbaae76103
commit e358171c45
20 changed files with 385 additions and 114 deletions

View File

@@ -71,7 +71,17 @@
"providerCustomOption": "🔧 Custom OpenAI-Compatible",
"saved": "(Gespeichert)",
"chatProvider": "Chat-Anbieter",
"chatDescription": "KI-Anbieter für den Chat-Assistenten. Fällt auf den Tags-Anbieter zurück, wenn nicht konfiguriert."
"chatDescription": "KI-Anbieter für den Chat-Assistenten. Fällt auf den Tags-Anbieter zurück, wenn nicht konfiguriert.",
"fetchModelsFailed": "Modelle konnten nicht geladen werden",
"refreshModels": "Modelle aktualisieren",
"configured": "Konfiguriert",
"fetchingModels": "Modelle werden geladen...",
"clickToLoadModels": "Klicken Sie auf ↺ um Modelle zu laden",
"searchModel": "Modell suchen...",
"noModels": "Keine Modelle. Klicken Sie auf ↺",
"modelsAvailable": "{count} Modell(e) verfügbar",
"enterUrlToLoad": "URL eingeben und ↺ klicken",
"currentProvider": "(Aktuell: {provider})"
},
"aiTest": {
"description": "Testen Sie Ihre KI-Anbieter für Tag-Generierung und semantische Such-Embeddings",
@@ -217,8 +227,11 @@
"jinaKeyDescription": "Wird für Web-Scraping verwendet. Funktioniert ohne Schlüssel, aber mit Ratenbegrenzung.",
"saveSettings": "Werkzeugeinstellungen speichern",
"updateSuccess": "Werkzeugeinstellungen erfolgreich aktualisiert",
"updateFailed": "Fehler beim Aktualisieren der Werkzeugeinstellungen"
}
"updateFailed": "Fehler beim Aktualisieren der Werkzeugeinstellungen",
"testing": "Test läuft...",
"testSearch": "Websuche testen"
},
"settingsDescription": "Anwendungseinstellungen konfigurieren"
},
"ai": {
"analyzing": "KI analysiert...",
@@ -368,7 +381,9 @@
"signIn": "Anmelden",
"signInToAccount": "Melden Sie sich in Ihrem Konto an",
"signOut": "Sign out",
"signUp": "Registrieren"
"signUp": "Registrieren",
"confirmPassword": "Passwort bestätigen",
"confirmPasswordPlaceholder": "Passwort erneut eingeben"
},
"autoLabels": {
"analyzing": "Notizen werden analysiert...",