If user.language is empty then user setting current

ofaj
Julio 10 years ago
parent c79313de36
commit b8d2fc46c4
  1. 16
      src/Chamilo/CoreBundle/EventListener/LegacyLoginListener.php

@ -4,6 +4,7 @@
namespace Chamilo\CoreBundle\EventListener; namespace Chamilo\CoreBundle\EventListener;
use Chamilo\CoreBundle\Entity\Language; use Chamilo\CoreBundle\Entity\Language;
use Chamilo\CoreBundle\Entity\SettingsCurrent;
use Symfony\Component\HttpFoundation\RedirectResponse; use Symfony\Component\HttpFoundation\RedirectResponse;
use Symfony\Component\HttpKernel\Event\FilterResponseEvent; use Symfony\Component\HttpKernel\Event\FilterResponseEvent;
use Symfony\Component\HttpKernel\Event\GetResponseEvent; use Symfony\Component\HttpKernel\Event\GetResponseEvent;
@ -70,12 +71,23 @@ class LegacyLoginListener implements EventSubscriberInterface
$user->setSuperAdmin(true); $user->setSuperAdmin(true);
} }
$locale = 'fr';
$userLanguage = $user->getLanguage();
if (empty($userLanguage)) {
/** @var SettingsCurrent $languageFromDb */
$languageFromDb = $em->getRepository('ChamiloCoreBundle:SettingsCurrent')->findOneBy(
['variable' => 'platformLanguage']
);
$userLanguage = $languageFromDb->getSelectedValue();
}
/** @var Language $language */ /** @var Language $language */
$language = $em->getRepository('ChamiloCoreBundle:Language')->findOneBy( $language = $em->getRepository('ChamiloCoreBundle:Language')->findOneBy(
['englishName' => $user->getLanguage()] ['englishName' => $userLanguage]
); );
$locale = '';
if ($language) { if ($language) {
$locale = $language->getIsocode(); $locale = $language->getIsocode();
} }

Loading…
Cancel
Save