diff options
| author | winter | 2024-12-14 00:08:41 +0000 |
|---|---|---|
| committer | winter | 2024-12-14 00:08:41 +0000 |
| commit | 86cf52e8d2701e13bd9fd4c847b35eba7506c473 (patch) | |
| tree | 7b21f99004650efc42057e96905967e5d4e01038 /Digitigrade | |
| parent | 2713c1f73a39d4106936d4c52bf8f18d810d7f3c (diff) | |
add a godawful basic html actor page
Diffstat (limited to 'Digitigrade')
| -rw-r--r-- | Digitigrade/HttpResponseStatus.php | 1 | ||||
| -rw-r--r-- | Digitigrade/HttpResponseStatus/BadRequest.php | 3 | ||||
| -rw-r--r-- | Digitigrade/HttpResponseStatus/InternalServerError.php | 3 | ||||
| -rw-r--r-- | Digitigrade/HttpResponseStatus/NoHandlerFound.php | 3 | ||||
| -rw-r--r-- | Digitigrade/HttpResponseStatus/NotFound.php | 3 | ||||
| -rw-r--r-- | Digitigrade/HttpResponseStatus/TemporaryRedirect.php | 25 | ||||
| -rw-r--r-- | Digitigrade/Router.php | 1 |
7 files changed, 39 insertions, 0 deletions
diff --git a/Digitigrade/HttpResponseStatus.php b/Digitigrade/HttpResponseStatus.php index e169833..4b9a0d6 100644 --- a/Digitigrade/HttpResponseStatus.php +++ b/Digitigrade/HttpResponseStatus.php @@ -4,4 +4,5 @@ namespace Digitigrade; interface HttpResponseStatus extends \Throwable { public function httpCode(): int; public function httpReason(): string; + public function httpHeaders(); }
\ No newline at end of file diff --git a/Digitigrade/HttpResponseStatus/BadRequest.php b/Digitigrade/HttpResponseStatus/BadRequest.php index ba7ce65..e605f70 100644 --- a/Digitigrade/HttpResponseStatus/BadRequest.php +++ b/Digitigrade/HttpResponseStatus/BadRequest.php @@ -15,4 +15,7 @@ class BadRequest extends \Exception implements HttpResponseStatus { public function httpReason(): string { return "Bad Request"; } + + public function httpHeaders() { + } }
\ No newline at end of file diff --git a/Digitigrade/HttpResponseStatus/InternalServerError.php b/Digitigrade/HttpResponseStatus/InternalServerError.php index 237c526..f04f64f 100644 --- a/Digitigrade/HttpResponseStatus/InternalServerError.php +++ b/Digitigrade/HttpResponseStatus/InternalServerError.php @@ -20,4 +20,7 @@ class InternalServerError extends \Exception implements HttpResponseStatus { public function httpReason(): string { return "Internal Server Error"; } + + public function httpHeaders() { + } }
\ No newline at end of file diff --git a/Digitigrade/HttpResponseStatus/NoHandlerFound.php b/Digitigrade/HttpResponseStatus/NoHandlerFound.php index 871b873..e227a74 100644 --- a/Digitigrade/HttpResponseStatus/NoHandlerFound.php +++ b/Digitigrade/HttpResponseStatus/NoHandlerFound.php @@ -15,4 +15,7 @@ class NoHandlerFound extends \Exception implements HttpResponseStatus { public function httpReason(): string { return "Not Found"; } + + public function httpHeaders() { + } }
\ No newline at end of file diff --git a/Digitigrade/HttpResponseStatus/NotFound.php b/Digitigrade/HttpResponseStatus/NotFound.php index 643976c..7da4187 100644 --- a/Digitigrade/HttpResponseStatus/NotFound.php +++ b/Digitigrade/HttpResponseStatus/NotFound.php @@ -15,4 +15,7 @@ class NotFound extends \Exception implements HttpResponseStatus { public function httpReason(): string { return "Not Found"; } + + public function httpHeaders() { + } }
\ No newline at end of file diff --git a/Digitigrade/HttpResponseStatus/TemporaryRedirect.php b/Digitigrade/HttpResponseStatus/TemporaryRedirect.php new file mode 100644 index 0000000..fbf0def --- /dev/null +++ b/Digitigrade/HttpResponseStatus/TemporaryRedirect.php @@ -0,0 +1,25 @@ +<?php +namespace Digitigrade\HttpResponseStatus; + +use Digitigrade\HttpResponseStatus; + +class TemporaryRedirect extends \Exception implements HttpResponseStatus { + public string $target; + + public function __construct(string $target) { + $this->target = $target; + $this->message = "Redirecting to $target"; + } + + public function httpCode(): int { + return 302; + } + + public function httpReason(): string { + return "Found"; + } + + public function httpHeaders() { + header("Location: $this->target"); + } +}
\ No newline at end of file diff --git a/Digitigrade/Router.php b/Digitigrade/Router.php index fb984d5..e8bea48 100644 --- a/Digitigrade/Router.php +++ b/Digitigrade/Router.php @@ -23,6 +23,7 @@ class Router extends Singleton { $this->processRequestInner(); } catch (HttpResponseStatus $e) { http_response_code($e->httpCode()); + $e->httpHeaders(); echo '<h1>' . $e->httpReason() . '</h1><pre>' . $e->getMessage() . '</pre>'; } } |
