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();