diff --git a/client/src/i18n.ts b/client/src/i18n.ts index 246a560e51fc289791559db0b880fc3bf81d3754..6f08f1c34cc7ac7d0f0e82b13134b48d35c2c47b 100644 --- a/client/src/i18n.ts +++ b/client/src/i18n.ts @@ -58,7 +58,13 @@ const languagesInfosPromises = availableLanguages.map(async (item: any) => ({ export const languagesInfos: readonly LanguageInfo[] = await Promise.all(languagesInfosPromises) const lastLanguage = localStorage.getItem('language') -const defaultLanguage = lastLanguage ? lastLanguage : 'en' +// transifex uses underscores instead of dashes +const systemLanguage = navigator.language.replace('-', '_') +const defaultLanguage = lastLanguage + ? lastLanguage + : availableLanguages.includes(systemLanguage) + ? systemLanguage + : 'en' const initialResources = await getTranslation(defaultLanguage)