88 lines
1.8 KiB
PHP
88 lines
1.8 KiB
PHP
|
<?php
|
||
|
// see app.php for application logic
|
||
|
|
||
|
// AUTOLOADING
|
||
|
|
||
|
spl_autoload_register(function ($class){
|
||
|
require __DIR__ . '/lib/' . str_replace('\\', '/', $class) . '.php';
|
||
|
});
|
||
|
|
||
|
// ERRORS
|
||
|
require __DIR__ . '/lib/tracy.php';
|
||
|
use \Tracy\Debugger;
|
||
|
Debugger::enable(!empty($config['show_debug']) ? Debugger::DEVELOPMENT : Debugger::DETECT);
|
||
|
Debugger::$showBar = false;
|
||
|
Debugger::$errorTemplate = __DIR__ . '/tpl/500.htm';
|
||
|
|
||
|
// ROUTES DEFINITION
|
||
|
|
||
|
$routeCollector = new FastRoute\RouteCollector(new FastRoute\RouteParser\Std(), new FastRoute\DataGenerator\GroupCountBased());
|
||
|
|
||
|
|
||
|
// user
|
||
|
// requireLogin
|
||
|
|
||
|
function di($service)
|
||
|
{
|
||
|
// stub
|
||
|
}
|
||
|
|
||
|
function flash($msg)
|
||
|
{
|
||
|
// stub
|
||
|
}
|
||
|
|
||
|
function redirect($url, $status = 302)
|
||
|
{
|
||
|
// stub
|
||
|
}
|
||
|
|
||
|
function render($view, $data)
|
||
|
{
|
||
|
// stub
|
||
|
}
|
||
|
|
||
|
function response($body, $status=200, $headers=[])
|
||
|
{
|
||
|
|
||
|
}
|
||
|
|
||
|
function notFound()
|
||
|
{
|
||
|
// ?
|
||
|
}
|
||
|
|
||
|
function route($method, $url, $callback)
|
||
|
{
|
||
|
global $routeCollector;
|
||
|
if (empty($method)) $method = ['GET', 'POST'];
|
||
|
$routeCollector->addRoute($method, $url, $callback);
|
||
|
}
|
||
|
|
||
|
require 'app.php';
|
||
|
|
||
|
// finally running the APP
|
||
|
|
||
|
$routeDispatcher = new FastRoute\Dispatcher\GroupCountBased($routeCollector->getData());
|
||
|
$request = new Nyholm\Psr7\Request($_SERVER['REQUEST_METHOD'], $_SERVER['REQUEST_URI']);
|
||
|
|
||
|
$routeInfo = $routeDispatcher->dispatch($request->getMethod(), $request->getUri());
|
||
|
dump($routeInfo);
|
||
|
switch ($routeInfo[0]) {
|
||
|
case FastRoute\Dispatcher::NOT_FOUND:
|
||
|
// ... 404 Not Found
|
||
|
break;
|
||
|
case FastRoute\Dispatcher::METHOD_NOT_ALLOWED:
|
||
|
$allowedMethods = $routeInfo[1];
|
||
|
// ... 405 Method Not Allowed
|
||
|
break;
|
||
|
case FastRoute\Dispatcher::FOUND:
|
||
|
$handler = $routeInfo[1];
|
||
|
$vars = $routeInfo[2];
|
||
|
// ... call $handler with $vars
|
||
|
$handler($request, $vars);
|
||
|
|
||
|
break;
|
||
|
}
|
||
|
|
||
|
echo 'FIN';
|