phpmyadmin/libraries/classes/Middleware/ThemeInitialization.php
Maurício Meneghini Fauth 12c798e544
Create the ThemeInitialization middleware
Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
2023-08-16 20:51:23 -03:00

26 lines
753 B
PHP

<?php
declare(strict_types=1);
namespace PhpMyAdmin\Middleware;
use PhpMyAdmin\Core;
use PhpMyAdmin\Theme\ThemeManager;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\MiddlewareInterface;
use Psr\Http\Server\RequestHandlerInterface;
final class ThemeInitialization implements MiddlewareInterface
{
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
{
$container = Core::getContainerBuilder();
/** @var ThemeManager $themeManager */
$themeManager = $container->get(ThemeManager::class);
$GLOBALS['theme'] = $themeManager->initializeTheme();
return $handler->handle($request);
}
}