public function renderModuleStatus(AphrontRequest $request)
 {
     $viewer = $request->getViewer();
     $extensions = PhabricatorAuthSessionEngineExtension::getAllExtensions();
     $rows = array();
     foreach ($extensions as $extension) {
         $rows[] = array(get_class($extension), $extension->getExtensionKey(), $extension->getExtensionName());
     }
     return id(new AphrontTableView($rows))->setNoDataString(pht('There are no registered session engine extensions.'))->setHeaders(array(pht('Class'), pht('Key'), pht('Name')))->setColumnClasses(array(null, null, 'wide pri'));
 }
コード例 #2
0
 public function willServeRequestForUser(PhabricatorUser $user)
 {
     // We allow the login user to generate any missing cache data inline.
     $user->setAllowInlineCacheGeneration(true);
     // Switch to the user's translation.
     PhabricatorEnv::setLocaleCode($user->getTranslation());
     $extensions = PhabricatorAuthSessionEngineExtension::getAllExtensions();
     foreach ($extensions as $extension) {
         $extension->willServeRequestForUser($user);
     }
 }
コード例 #3
0
 public function logoutSession(PhabricatorUser $user, PhabricatorAuthSession $session)
 {
     $log = PhabricatorUserLog::initializeNewLog($user, $user->getPHID(), PhabricatorUserLog::ACTION_LOGOUT);
     $log->save();
     $extensions = PhabricatorAuthSessionEngineExtension::getAllExtensions();
     foreach ($extensions as $extension) {
         $extension->didLogout($user, array($session));
     }
     $session->delete();
 }