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 @@
"tagsGenerationProvider": "Fournisseur de génération d'étiquettes",
"title": "Configuration IA",
"updateFailed": "Échec de la mise à jour des paramètres IA",
"updateSuccess": "Paramètres IA mis à jour avec succès"
"updateSuccess": "Paramètres IA mis à jour avec succès",
"fetchModelsFailed": "Failed to fetch models",
"refreshModels": "Refresh Models",
"configured": "Configured",
"fetchingModels": "Fetching models...",
"clickToLoadModels": "Click ↺ to load models",
"searchModel": "Search model...",
"noModels": "No models. Click ↺",
"modelsAvailable": "{count} model(s) available",
"enterUrlToLoad": "Enter URL and click ↺ to load models",
"currentProvider": "(Current: {provider})"
},
"aiTest": {
"description": "Testez vos fournisseurs IA pour la génération d'étiquettes et les embeddings de recherche sémantique",
@@ -138,7 +148,9 @@
"jinaKeyDescription": "Utilisée pour le scraping web. Fonctionne sans clé mais avec des limites de débit.",
"saveSettings": "Enregistrer les paramètres outils",
"updateSuccess": "Paramètres outils mis à jour avec succès",
"updateFailed": "Échec de la mise à jour des paramètres outils"
"updateFailed": "Échec de la mise à jour des paramètres outils",
"testing": "Testing...",
"testSearch": "Test web search"
},
"security": {
"allowPublicRegistration": "Autoriser l'inscription publique",
@@ -221,7 +233,8 @@
"name": "Nom",
"role": "Rôle"
}
}
},
"settingsDescription": "Configure application-wide settings"
},
"ai": {
"analyzing": "Analyse IA en cours...",
@@ -371,7 +384,9 @@
"signIn": "Connexion",
"signInToAccount": "Connectez-vous à votre compte",
"signOut": "Déconnexion",
"signUp": "S'inscrire"
"signUp": "S'inscrire",
"confirmPassword": "Confirm Password",
"confirmPasswordPlaceholder": "Confirm your password"
},
"batch": {
"organize": "Organiser",