Constructor of a controller will be executed before middleware and route, so to manipulate session in construct will not work.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
public function __construct(){ //parent::__construct(); $this->middleware(function ($request, $next) { $locale = $request->input('locale'); if($locale != false){ session()->put('locale', $locale); App()->setLocale($locale); }else if(session()->get('locale') != false){ App()->setLocale(session()->get('locale')); } return $next($request); }); } |