You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

27 lines
1.0 KiB

<?php
use Silex\Router\Router;
require __DIR__ . '/../src/Silex/Config/SplClassLoader.php';
require __DIR__ . '/../src/Silex/Config/Config.php';
$loader = new SplClassLoader('Silex', __DIR__ . '/../src');
$loader->register();
$security = new \Silex\Controller\SecurityController();
$user = new \Silex\Controller\UserController();
$admin = new \Silex\Controller\AdminController();
$router = new Router($_SERVER['REQUEST_URI']);
$router->get('/^$/', [$user, 'index']);
$router->get('/^recent\/(?<page>\d+)$/', [$user, 'index']);
$router->get('/^news\/(?<id>\d+)$/', [$user, 'viewPost']);
$router->get('/^comments\/(?<id>[\w-]+)$/', [$user, 'viewPostComments']);
$router->match('/^login$/', [$security, 'login']);
$router->match('/^register$/', [$security, 'register']);
$router->match('/^logout$/', [$security, 'logout']);
$router->match('/^admin\/publish$/', [$admin, 'publish']);
$router->match('/^admin\/edit\/(?<id>\d+)$/', [$admin, 'edit']);
$di = new \Silex\DI\DI($router);
$router->run($di)->render($di, __DIR__ . '/../' . VIEW_PATH);