public function execute($filterChain) { $languages = $this->getContext()->getRequest()->getLanguages(); $userCulture = $this->getConfigService()->getAdminLocalizationDefaultLanguage(); $localizationService = new LocalizationService(); $languageToSet = !empty($languages[0]) && $this->getConfigService()->getAdminLocalizationUseBrowserLanguage() == "Yes" && key_exists($languages[0], $localizationService->getSupportedLanguageListFromYML()) ? $languages[0] : $userCulture; $datePattern = $this->getContext()->getUser()->getDateFormat(); $datePattern = isset($datePattern) ? $datePattern : $this->getConfigService()->getAdminLocalizationDefaultDateFormat(); $user = $this->getContext()->getUser(); $user->setCulture($languageToSet); $user->setDateFormat($datePattern); // Execute next filter in filter chain $filterChain->execute(); }
/** * this is used to make language list from supported_languages.yml * @return <type> */ public function getLanguages() { $localizationService = new LocalizationService(); return $localizationService->getSupportedLanguageListFromYML(); }