Kohana_Auth_ORM::logout PHP Method

logout() public method

Log a user out and remove any autologin cookies.
public logout ( $destroy = FALSE, $logout_all = FALSE ) : boolean
return boolean
    public function logout($destroy = FALSE, $logout_all = FALSE)
    {
        // Set by force_login()
        $this->_session->delete($this->_config['forced_key']);
        if ($token = Cookie::get($this->_config['autologin_key'])) {
            // Delete the autologin cookie to prevent re-login
            Cookie::delete($this->_config['autologin_key']);
            // Clear the autologin token from the database
            $token = ORM::factory('user_token', array('token' => $token));
            if ($token->loaded() and $logout_all) {
                ORM::factory('user_token')->where('user_id', '=', $token->user_id)->delete_all();
            } elseif ($token->loaded()) {
                $token->delete();
            }
        }
        return parent::logout($destroy);
    }

Usage Example

Example #1
0
 public function logout($destroy = FALSE, $logout_all = FALSE)
 {
     $settings = Kohana_Config::instance()->load("mmdb");
     if (empty($settings->localMachine)) {
         $user = $this->get_user();
         if (!empty($user->kids_id)) {
             setcookie("kidsessionid", null, -1, "/", ".nationalgeographic.com");
         }
     }
     parent::logout($destroy, $logout_all);
 }