locale = $locale; } /** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return mixed */ public function handle($request, Closure $next) { $locale = core()->getRequestedLocaleCode('locale', false); if ($locale) { if ($this->locale->findOneByField('code', $locale)) { app()->setLocale($locale); session()->put('locale', $locale); } } else { if ($locale = session()->get('locale')) { app()->setLocale($locale); } else { app()->setLocale(core()->getDefaultChannel()->default_locale->code); } } unset($request['locale']); return $next($request); } }