2018-04-11 19:49:35 +02:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace Grocy\Middleware;
|
|
|
|
|
2020-08-31 20:40:31 +02:00
|
|
|
use Grocy\Services\SessionService;
|
2020-04-03 17:45:40 +01:00
|
|
|
use Psr\Http\Message\ResponseFactoryInterface;
|
2020-08-19 19:23:13 +02:00
|
|
|
use Psr\Http\Message\ServerRequestInterface as Request;
|
2020-02-11 17:42:03 +01:00
|
|
|
|
2020-08-19 19:23:13 +02:00
|
|
|
class SessionAuthMiddleware extends AuthMiddleware
|
2018-04-11 19:49:35 +02:00
|
|
|
{
|
2020-08-29 16:41:27 +02:00
|
|
|
public function __construct(\DI\Container $container, ResponseFactoryInterface $responseFactory)
|
|
|
|
{
|
|
|
|
parent::__construct($container, $responseFactory);
|
|
|
|
}
|
|
|
|
|
2020-09-01 21:29:47 +02:00
|
|
|
public function authenticate(Request $request)
|
2020-08-29 16:41:27 +02:00
|
|
|
{
|
|
|
|
$sessionService = SessionService::getInstance();
|
2020-08-31 20:40:31 +02:00
|
|
|
|
2020-10-19 18:38:12 +02:00
|
|
|
if (!isset($_COOKIE[SessionService::SESSION_COOKIE_NAME]) || !$sessionService->IsValidSession($_COOKIE[SessionService::SESSION_COOKIE_NAME]))
|
2020-08-29 16:41:27 +02:00
|
|
|
{
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
2020-10-19 18:38:12 +02:00
|
|
|
return $sessionService->GetUserBySessionKey($_COOKIE[SessionService::SESSION_COOKIE_NAME]);
|
2020-08-29 16:41:27 +02:00
|
|
|
}
|
|
|
|
}
|
2020-10-19 18:38:12 +02:00
|
|
|
|
|
|
|
public static function ProcessLogin(array $postParams)
|
|
|
|
{
|
|
|
|
throw new \Exception('Not implemented');
|
|
|
|
}
|
2018-04-11 19:49:35 +02:00
|
|
|
}
|