From 67655b7501a8abe0895fbef3268671d1483210f5 Mon Sep 17 00:00:00 2001 From: r4sas Date: Sun, 12 Jun 2022 00:00:24 +0000 Subject: [PATCH] move routing defining inside class Signed-off-by: r4sas --- lib/router.php | 46 ++++++++++++++++++++++++++++++++++++++++++++++ public/index.php | 47 ++--------------------------------------------- 2 files changed, 48 insertions(+), 45 deletions(-) diff --git a/lib/router.php b/lib/router.php index a7ecbd8..7b112ae 100644 --- a/lib/router.php +++ b/lib/router.php @@ -26,4 +26,50 @@ class Router { return call_user_func($this->errRoute); } + + public function loadRoutes () { + $this->addRoute('^/?(?:\?|$)', function($url) { + require __DIR__ . '/../views/home.php'; + }); + + $this->addRoute('^/add/?(?:\?|$)', function($url) { + require __DIR__ . '/../views/add.php'; + }); + + $this->addRoute('^/alive/?([0-9]+)?/?(?:\?|$)', function($url, $page = 1) { + require __DIR__ . '/../views/alive.php'; + }); + + $this->addRoute('^/all/?([0-9]+)?/?', function($url, $page = 1) { + require __DIR__ . '/../views/all.php'; + }); + + $this->addRoute('^/api/?([^\?/]*)/?([^\?/]*)?/?(?:\?|$)', function($url, $command, $query = "") { + require __DIR__ . '/../views/api.php'; + }); + + $this->addRoute('^/jump/?([^\?/]*)/?(?:\?|$)', function($url, $query = "") { + require __DIR__ . '/../views/jump.php'; + }); + + $this->addRoute('^/autojump/?(.*)/?', function($url, $query = "") { + require __DIR__ . '/../views/autojump.php'; + }); + + $this->addRoute('^/latest/?(?:\?|$)', function($url) { + require __DIR__ . '/../views/latest.php'; + }); + + $this->addRoute('^/search/?([^\?/]*)/?(?:\?|$)', function($url, $query = "") { + require __DIR__ . '/../views/search.php'; + }); + + $this->addRoute('^/hidden/?([0-9]+)?/?(?:\?|$)', function($url, $page = 1) { + require __DIR__ . '/../views/hidden.php'; + }); + + $this->addErrorRoute(function() { + require __DIR__ . '/../views/404.php'; + }); + } } diff --git a/public/index.php b/public/index.php index 650757d..a7b773f 100644 --- a/public/index.php +++ b/public/index.php @@ -6,50 +6,7 @@ require __DIR__ . '/../vendor/autoload.php'; /* Initialize pages rounting */ $r = new Router(); +$r->loadRoutes(); -$r->addRoute('^/?(?:\?|$)', function($url) { - require __DIR__ . '/../views/home.php'; -}); - -$r->addRoute('^/add/?(?:\?|$)', function($url) { - require __DIR__ . '/../views/add.php'; -}); - -$r->addRoute('^/alive/?([0-9]+)?/?(?:\?|$)', function($url, $page = 1) { - require __DIR__ . '/../views/alive.php'; -}); - -$r->addRoute('^/all/?([0-9]+)?/?', function($url, $page = 1) { - require __DIR__ . '/../views/all.php'; -}); - -$r->addRoute('^/api/?(all|status)?/?([^\?/]*)?/?(?:\?|$)', function($url, $command, $query = "") { - require __DIR__ . '/../views/api.php'; -}); - -$r->addRoute('^/jump/?([^\?/]*)/?(?:\?|$)', function($url, $query = "") { - require __DIR__ . '/../views/jump.php'; -}); - -$r->addRoute('^/autojump/?(.*)/?', function($url, $query = "") { - require __DIR__ . '/../views/autojump.php'; -}); - -$r->addRoute('^/latest/?(?:\?|$)', function($url) { - require __DIR__ . '/../views/latest.php'; -}); - -$r->addRoute('^/search/?([^\?/]*)/?(?:\?|$)', function($url, $query = "") { - require __DIR__ . '/../views/search.php'; -}); - -$r->addRoute('^/hidden/?([0-9]+)?/?(?:\?|$)', function($url, $page = 1) { - require __DIR__ . '/../views/hidden.php'; -}); - -$r->addErrorRoute(function() { - require __DIR__ . '/../views/404.php'; -}); - -/* Process requests */ +/* Process request */ $r->run();