Esempio n. 1
0
 protected function checkForceLocale(Request $request)
 {
     $allSupportedLocaleCodes = allSupportedLocaleCodes();
     $isDirectLocale = in_array($request->segment(1), $allSupportedLocaleCodes);
     $forceLocale = $isDirectLocale ? currentLocaleCode() : SettingsFacade::getLocale();
     if ($request->has(AppConfig::KEY_FORCE_LOCALE)) {
         $forceLocale = $request->input(AppConfig::KEY_FORCE_LOCALE);
     }
     if (in_array($forceLocale, $allSupportedLocaleCodes)) {
         if ($forceLocale != SettingsFacade::getLocale()) {
             SettingsFacade::setLocale($forceLocale);
             SettingsFacade::storeSession();
             SettingsFacade::storeUser();
         }
         if ($forceLocale != currentLocaleCode()) {
             $rdr = redirect(currentURL($forceLocale));
             return SettingsFacade::storeCookie($rdr);
         }
     }
     return false;
 }