當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Application::isGuestAllowed方法代碼示例

本文整理匯總了PHP中Alchemy\Phrasea\Application::isGuestAllowed方法的典型用法代碼示例。如果您正苦於以下問題:PHP Application::isGuestAllowed方法的具體用法?PHP Application::isGuestAllowed怎麽用?PHP Application::isGuestAllowed使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Alchemy\Phrasea\Application的用法示例。


在下文中一共展示了Application::isGuestAllowed方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: authenticateAsGuest

 public function authenticateAsGuest(PhraseaApplication $app, Request $request)
 {
     if (!$app->isGuestAllowed()) {
         $app->abort(403, $app->trans('Phraseanet guest-access is disabled'));
     }
     $context = new Context(Context::CONTEXT_GUEST);
     $app['dispatcher']->dispatch(PhraseaEvents::PRE_AUTHENTICATE, new PreAuthenticate($request, $context));
     $user = $app['manipulator.user']->createUser(uniqid('guest'), \random::generatePassword(24));
     $invite_user = $app['manipulator.user']->getRepository()->findByLogin(User::USER_GUEST);
     $usr_base_ids = array_keys($app['acl']->get($user)->get_granted_base());
     $app['acl']->get($user)->revoke_access_from_bases($usr_base_ids);
     $invite_base_ids = array_keys($app['acl']->get($invite_user)->get_granted_base());
     $app['acl']->get($user)->apply_model($invite_user, $invite_base_ids);
     $this->postAuthProcess($app, $user);
     $response = $this->generateAuthResponse($app, $app['browser'], $request->request->get('redirect'));
     $response->headers->setCookie(new Cookie('invite-usr-id', $user->getId()));
     $event = new PostAuthenticate($request, $response, $user, $context);
     $app['dispatcher']->dispatch(PhraseaEvents::POST_AUTHENTICATE, $event);
     return $response;
 }
開發者ID:romainneutron,項目名稱:Phraseanet,代碼行數:20,代碼來源:Login.php


注:本文中的Alchemy\Phrasea\Application::isGuestAllowed方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。