- Added RememberMe middleware
This commit is contained in:
parent
e63ea439d6
commit
d3bb2c248a
|
@ -85,8 +85,8 @@ abstract class User implements UserInterface {
|
|||
return trim( ( $this->firstName ?? "" ) . " " . ( $this->lastName ?? "" ) );
|
||||
}
|
||||
|
||||
public function loggedIn(): bool
|
||||
public function loggedIn(?bool $set = null): bool
|
||||
{
|
||||
return $this->logged;
|
||||
return $set !== null ? $this->logged = $set : $this->logged;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,7 +7,7 @@ use Ulmus\Entity\EntityInterface;
|
|||
interface UserInterface extends EntityInterface
|
||||
{
|
||||
public function __toString() : string;
|
||||
public function loggedIn() : bool;
|
||||
public function loggedIn(?bool $set = null) : bool;
|
||||
public function verifyPassword(string $password) : bool;
|
||||
public function hashPassword(? string $password = null) : static;
|
||||
public function setPassword($password) : static;
|
||||
|
|
|
@ -133,7 +133,7 @@ class Authenticate {
|
|||
|
||||
$this->user->fromArray($entity);
|
||||
|
||||
$this->user->logged = true;
|
||||
$this->user->loggedIn(true);
|
||||
|
||||
return $this->user;
|
||||
}
|
||||
|
|
|
@ -0,0 +1,28 @@
|
|||
<?php
|
||||
|
||||
namespace Ulmus\User\Middleware;
|
||||
|
||||
use Psr\Http\{
|
||||
Message\ResponseInterface,
|
||||
Message\ServerRequestInterface,
|
||||
Server\MiddlewareInterface,
|
||||
Server\RequestHandlerInterface
|
||||
};
|
||||
use Ulmus\User\Entity\UserInterface;
|
||||
use Ulmus\User\Authorize\PostRequestAuthentication;
|
||||
use Ulmus\User\Lib\Authenticate;
|
||||
|
||||
class RememberMeMiddleware implements MiddlewareInterface
|
||||
{
|
||||
public function __construct(
|
||||
protected UserInterface $entity,
|
||||
protected Authenticate $authenticator,
|
||||
) {}
|
||||
|
||||
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
|
||||
{
|
||||
$this->authenticator->rememberMe();
|
||||
|
||||
return $handler->handle($request);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue