diff --git a/frontend/js/app.js b/frontend/js/app.js index bf6de33..9e15afa 100644 --- a/frontend/js/app.js +++ b/frontend/js/app.js @@ -23,12 +23,14 @@ import { initMermaid, setupFocusMode } from './mermaid-viewer.js'; // Initialization — mirrors the original app.js init() ordering // ========================================================================= async function init() { - // 1. Init auth first — needed for server-side language preference - const authOk = await Auth.AuthManager.initAuth(); - - // 2. Init i18n after auth so server language preference is available + // 1. Init i18n FIRST — loads fallback (FR) + selected locale + // Server language check may fail (no auth yet), falls to localStorage + // LocalStorage has correct language if user set it previously await initI18n(); + // 2. Init auth — now t() works inside showApp()/renderUserMenu() + const authOk = await Auth.AuthManager.initAuth(); + UI.initTheme(); UI.initHeaderMenu(); UI.initCustomDropdowns(); diff --git a/frontend/js/backup-manager.js b/frontend/js/backup-manager.js index ba7bc00..d546cc1 100644 --- a/frontend/js/backup-manager.js +++ b/frontend/js/backup-manager.js @@ -221,7 +221,7 @@ async function previewBackup(fpath) { var content = document.getElementById('bm-preview-content'); var title = document.getElementById('bm-preview-title'); panel.style.display = 'block'; - content.textContent = 'Chargement...'; + content.textContent = t("common.loading"); try { var data = await api('/api/backups/content?path=' + encodeURIComponent(fpath)); diff --git a/frontend/js/backups.js b/frontend/js/backups.js index fb3fdd2..7ef01a9 100644 --- a/frontend/js/backups.js +++ b/frontend/js/backups.js @@ -180,7 +180,7 @@ function renderMainView() { var html = '
Chargement des fichiers...
+${t('vaulthome.loading')}
Aucun fichier dans ce répertoire
+${t('vaulthome.empty')}
Erreur de chargement: ${escapeHtml(err?.detail || err?.message || 'Inconnue')}
+${errMsg}