/** * Set user from session * @param Request $request */ public function setRequestUser(Request $request) { $request->addUserCallback('accounts', function (Request $request) { $userid = $request->getSession()->get('catlab-user-id'); if ($userid) { $user = MapperFactory::getUserMapper()->getFromId($userid); ExpectedType::check($user, User::class); if ($user) { if ($accessToken = $request->getSession()->get('catlab-openid-access-token')) { $user->setAccessToken($accessToken); } return $user; } } return null; }); }
/** * Called after a redirect * @param Request $request * @return Response */ public function postLogout(Request $request) { if ($redirect = $request->getSession()->get('post-login-redirect')) { $request->getSession()->set('post-login-redirect', null); $request->getSession()->set('cancel-login-redirect', null); return Response::redirect($redirect); } return Response::redirect(URLBuilder::getURL('/')); }