aboutsummaryrefslogtreecommitdiff
path: root/views
diff options
context:
space:
mode:
authorSyndamia <kamen@syndamia.com>2025-01-26 22:18:31 +0200
committerSyndamia <kamen@syndamia.com>2025-01-26 22:24:48 +0200
commit426d1df08277d349e2117ec93e0d0ae76af571e6 (patch)
treee489855fbe280f52fa90271b27cdc88c762b605d /views
parent39f5b1fce005ff0a2c3cb552c4ec5f478ab0b831 (diff)
downloadnowayforward_human-426d1df08277d349e2117ec93e0d0ae76af571e6.tar
nowayforward_human-426d1df08277d349e2117ec93e0d0ae76af571e6.tar.gz
nowayforward_human-426d1df08277d349e2117ec93e0d0ae76af571e6.zip
feat(router): Support for sub-root pages
Diffstat (limited to 'views')
-rw-r--r--views/global/router.php25
1 files changed, 15 insertions, 10 deletions
diff --git a/views/global/router.php b/views/global/router.php
index cd9b304..a783531 100644
--- a/views/global/router.php
+++ b/views/global/router.php
@@ -5,12 +5,23 @@ $CONTROLLERS_DIR = __DIR__ . '/../../controllers';
$MODELS_DIR = __DIR__ . '/../../models';
$uri = rtrim($_SERVER['REQUEST_URI'], '/');
-$root = '/' . @explode('/', $uri, 3)[1];
+$exploded = @explode('/', $uri, 4);
+$root = '/' . @$exploded[1];
+$subroot = '/' . @$exploded[2];
function route_view() {
global $root;
+ global $subroot;
global $uri;
+ switch ($uri) {
+ case '': case '/': case '/home':
+ return '/home';
+ }
+
+ switch ($root . $subroot) {
+ }
+
switch ($root) {
case '/archive': return '/archive';
case '/profile': return '/profile';
@@ -19,19 +30,13 @@ function route_view() {
case '/logout': return '/logout';
case '/newlist': return '/newlist';
case '/list': return '/list';
- }
-
- switch ($uri) {
- case '': case '/': case '/home':
- return '/home';
case '/authenticate':
return '/profile/authenticate.php';
-
- default:
- http_response_code(404);
- return '/404';
}
+
+ http_response_code(404);
+ return '/404';
}
$view = $VIEWS_DIR . route_view();