aboutsummaryrefslogtreecommitdiff
path: root/middlewares/MaintenanceMiddleware.php
diff options
context:
space:
mode:
Diffstat (limited to 'middlewares/MaintenanceMiddleware.php')
-rw-r--r--middlewares/MaintenanceMiddleware.php17
1 files changed, 17 insertions, 0 deletions
diff --git a/middlewares/MaintenanceMiddleware.php b/middlewares/MaintenanceMiddleware.php
new file mode 100644
index 00000000..de8a1baf
--- /dev/null
+++ b/middlewares/MaintenanceMiddleware.php
@@ -0,0 +1,17 @@
+<?php
+
+declare(strict_types=1);
+
+class MaintenanceMiddleware implements Middleware
+{
+ public function __invoke(Request $request, $next): Response
+ {
+ if (!Configuration::getConfig('system', 'enable_maintenance_mode')) {
+ return $next($request);
+ }
+ return new Response(render(__DIR__ . '/../templates/error.html.php', [
+ 'title' => '503 Service Unavailable',
+ 'message' => 'RSS-Bridge is down for maintenance.',
+ ]), 503);
+ }
+}