Fix language selection

pull/2744/head
Julio Montoya 7 years ago
parent 8101614f71
commit 30ef64332e
  1. 8
      src/CoreBundle/EventListener/LocaleListener.php
  2. 8
      src/CoreBundle/Settings/LanguageSettingsSchema.php

@ -79,7 +79,7 @@ class LocaleListener implements EventSubscriberInterface
$userLocale = $request->getSession()->get('_locale_user');
if (!empty($userLocale)) {
//$locale = $userLocale;
$localeList['user_profile_lang'] = $userLocale;
$localeList['user_profil_lang'] = $userLocale;
}
// 3. Check course locale
@ -111,7 +111,6 @@ class LocaleListener implements EventSubscriberInterface
// 4. force locale if it was selected from the URL
$localeFromUrl = $request->get('_locale');
if (!empty($localeFromUrl)) {
//$locale = $localeFromUrl;
$localeList['user_selected_lang'] = $platformLocale;
}
@ -122,11 +121,13 @@ class LocaleListener implements EventSubscriberInterface
'language_priority_1',
];
//var_dump($localeList);exit;
$locale = '';
foreach ($priorityList as $setting) {
$priority = $settings->getSetting("language.$setting");
if (!empty($priority) && isset($localeList[$priority])) {
$locale = $localeList[$priority];
break;
}
}
@ -134,12 +135,13 @@ class LocaleListener implements EventSubscriberInterface
// Use default order
$priorityList = [
'platform_lang',
'user_profile_lang',
'user_profil_lang',
'course_lang',
'user_selected_lang',
];
foreach ($priorityList as $setting) {
if (isset($localeList[$setting])) {
//var_dump($setting);
$locale = $localeList[$setting];
}
}

@ -53,10 +53,10 @@ class LanguageSettingsSchema extends AbstractSettingsSchema
{
$choices = [
'' => '',
'PlatformLanguage' => 'platform_lang', // default platform language
'UserLanguage' => 'user_profil_lang', // profile language of current user
'UserSelectedLanguage' => 'user_selected_lang', // language selected by user at login
'CourseLanguage' => 'course_lang', // language of the current course
'Platform language' => 'platform_lang', // default platform language
'User profile language' => 'user_profil_lang', // profile language of current user
'Selected from login' => 'user_selected_lang', // language selected by user at login
'Course language' => 'course_lang', // language of the current course
];
$builder

Loading…
Cancel
Save