destroy() public static method

Destroy session (including cookies). If session was created by admin, who logged into user (cookie auth is not equal to session auth), then destroy only session and re-create from cookie
public static destroy ( )
Example #1
0
 public function logoutAction()
 {
     Scalr_Session::destroy();
     $this->response->setRedirect('/');
 }
Example #2
0
    Scalr_UI_Response::getInstance()->sendResponse();
};
try {
    $startTime = microtime(true);
    require __DIR__ . '/src/prepend.inc.php';
    $prependTime = microtime(true);
    // public controller for link like /public/*; don't check CSRF
    $publicController = !strncmp('public', $path, strlen('public'));
    $session = Scalr_Session::getInstance();
    $time1 = microtime(true);
    try {
        $request = Scalr_UI_Request::initializeInstance(Scalr_UI_Request::REQUEST_TYPE_UI, getallheaders(), $_SERVER, $_REQUEST, $_FILES, $session->getUserId(), null);
    } catch (Exception $e) {
        if ($path == 'guest/logout') {
            // hack
            Scalr_Session::destroy();
            Scalr_UI_Response::getInstance()->setRedirect('/');
            Scalr_UI_Response::getInstance()->sendResponse();
            exit;
        }
        $message = $e->getMessage();
        if ($e->getCode() != 1) {
            $message = htmlspecialchars($message) . ' <a href="/guest/logout">Click here to login as another user</a>';
            Scalr_UI_Response::getInstance()->debugException($e);
            Scalr_UI_Response::getInstance()->failure($message, true);
            throw new Exception();
        } else {
            throw new Exception($message);
        }
    }
    $time2 = microtime(true);
Example #3
0
 public function logoutAction()
 {
     $this->auditLog("user.auth.logout", ['.result' => 'success']);
     Scalr_Session::destroy();
     $this->response->setRedirect('/');
 }