/**
  * 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;
     });
 }
Example #2
0
 /**
  * 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('/'));
 }