コード例 #1
0
 /**
  * @param User $user The user to clear auth tokens for.
  * @return LogoutTemplate Chainable
  */
 private function deleteUserAuthTokens(User $user)
 {
     $token = $this->modelFactory()->create(AuthToken::class);
     if ($token->source()->tableExists()) {
         $table = $token->source()->table();
         $q = 'DELETE FROM ' . $table . ' WHERE username = :username';
         $token->source()->dbQuery($q, ['username' => $user->username()]);
     }
     return $this;
 }
コード例 #2
0
 /**
  * @param RequestInterface $request The request.
  * @param User             $u       The user.
  * @return void
  */
 public function setRememberCookie(RequestInterface $request, User $u)
 {
     $remember = $request->getParam('remember-me');
     if (!$remember) {
         return;
     }
     $authToken = $this->modelFactory()->create('charcoal/admin/object/auth-token');
     $authToken->generate($u->username());
     $authToken->sendCookie();
     $authToken->save();
 }