aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Lange <code@nerdmind.de>2021-08-04 00:40:54 +0200
committerThomas Lange <code@nerdmind.de>2021-08-04 00:45:48 +0200
commitd1a68c763bdfa6ebbd71e2eee4ff870fed88be5f (patch)
tree0969653208b1c303be65286cb724af2a76238d91
parent78dad732e1fd3d4a57f7fa5747624ce0be50d803 (diff)
downloadblog-d1a68c763bdfa6ebbd71e2eee4ff870fed88be5f.tar.gz
blog-d1a68c763bdfa6ebbd71e2eee4ff870fed88be5f.tar.xz
blog-d1a68c763bdfa6ebbd71e2eee4ff870fed88be5f.zip
Move error page logic into the Application class
Move the logic for generating the error pages into the Application class to remove this ugly "require" call in the error403 and error404 methods.
-rw-r--r--403.php16
-rw-r--r--404.php16
-rw-r--r--core/namespace/Application.php14
3 files changed, 16 insertions, 30 deletions
diff --git a/403.php b/403.php
index 82f6836..6a3cb54 100644
--- a/403.php
+++ b/403.php
@@ -2,19 +2,9 @@
#===============================================================================
# INCLUDE: Initialization
#===============================================================================
-require_once 'core/application.php';
+require 'core/application.php';
#===============================================================================
-# Send HTTP status code
+# Show "403 Forbidden" error page
#===============================================================================
-http_response_code(403);
-
-#===============================================================================
-# Build document
-#===============================================================================
-$MainTemplate = Template\Factory::build('main');
-$MainTemplate->set('NAME', '403 Forbidden');
-$MainTemplate->set('HEAD', ['NAME' => $MainTemplate->get('NAME')]);
-$MainTemplate->set('HTML', Template\Factory::build('403'));
-
-echo $MainTemplate;
+Application::error403();
diff --git a/404.php b/404.php
index 25cc683..72ff5c0 100644
--- a/404.php
+++ b/404.php
@@ -2,19 +2,9 @@
#===============================================================================
# INCLUDE: Initialization
#===============================================================================
-require_once 'core/application.php';
+require 'core/application.php';
#===============================================================================
-# Send HTTP status code
+# Show "404 Not Found" error page
#===============================================================================
-http_response_code(404);
-
-#===============================================================================
-# Build document
-#===============================================================================
-$MainTemplate = Template\Factory::build('main');
-$MainTemplate->set('NAME', '404 Not Found');
-$MainTemplate->set('HEAD', ['NAME' => $MainTemplate->get('NAME')]);
-$MainTemplate->set('HTML', Template\Factory::build('404'));
-
-echo $MainTemplate;
+Application::error404();
diff --git a/core/namespace/Application.php b/core/namespace/Application.php
index 93361dd..b88fa2c 100644
--- a/core/namespace/Application.php
+++ b/core/namespace/Application.php
@@ -238,15 +238,21 @@ class Application {
# Exit application with the 403 error page
#===============================================================================
public static function error403(): void {
- require ROOT.'403.php';
- exit();
+ $Template = Template\Factory::build('main');
+ $Template->set('NAME', '403 Forbidden');
+ $Template->set('HEAD', ['NAME' => $Template->get('NAME')]);
+ $Template->set('HTML', Template\Factory::build('403'));
+ self::exit($Template, 403);
}
#===============================================================================
# Exit application with the 404 error page
#===============================================================================
public static function error404(): void {
- require ROOT.'404.php';
- exit();
+ $Template = Template\Factory::build('main');
+ $Template->set('NAME', '404 Not Found');
+ $Template->set('HEAD', ['NAME' => $Template->get('NAME')]);
+ $Template->set('HTML', Template\Factory::build('404'));
+ self::exit($Template, 404);
}
}