Lines 0.00% 0 / 11
Methods 0.00% 0 / 1
Classes 0.00% 0 / 1
Name Lines Methods CRAP
 process 0.00% 0 / 11 0.00% 0 / 1 6
13class MaintenanceMiddleware implements MiddlewareInterface
14{
15    private const int HTTP_UNAVAILABLE = 503;
16    private const string ERROR_UNAVAILABLE = 'serviceUnavailable';
17    #[\Override]
18    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
19    {
20        if (\App::MAINTENANCE_MODE_ENABLED) {
21            $error = ErrorMessages::get(self::ERROR_UNAVAILABLE);
22
23            $response = \App::$slim->getResponseFactory()->createResponse();
24            $response = $response->withStatus(self::HTTP_UNAVAILABLE)
25                ->withHeader('Content-Type', 'application/json; charset=utf-8');
26
27            $responseBody = json_encode([
28                'errors' => [$error]
29            ]);
30            $response->getBody()->write($responseBody);
31            return $response;
32        }
33
34        return $handler->handle($request);
35    }
36}