File: /var/www/vhosts/creativefellows.nl/leselektrisch.creativefellows.nl/config/routes.php
<?php
use App\Action\Preflight\PreflightAction;
use App\Action\Home\HomeAction;
use App\Action\View\ViewAction;
use App\Action\Download\DownloadAction;
use App\Action\Cache\CacheAction;
use App\Action\News\NewsListAction;
use App\Action\News\NewsListCategoryAction;
use App\Action\News\NewsViewAction;
use App\Action\Form\FormPostAction;
use App\Action\Form\LaPostaAction;
use App\Action\Tco\TcoViewAction;
use App\Action\Cookie\CookieAction;
use App\Middleware\CacheMiddleware;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Slim\App;
use Slim\Routing\RouteCollectorProxy;
return function (App $app) {
// preflight headers
$app->options('/{routes:.*}', PreflightAction::class);
// home
$app->get('/', HomeAction::class)->setName('home');
// tco calculator
$app->get('/tco-calculator', TcoViewAction::class)->setName('tco.view');
// cookies
$app->post('/accept-cookies', CookieAction::class)->setName('cookies.accept');
// news
$app->get('/actueel', NewsListAction::class)->setName('news.list');
$app->get('/actueel/{category}', NewsListCategoryAction::class)->setName('newsroom.category');
$app->get('/actueel/{category}/{page}', NewsViewAction::class)->setName('newsroom.view');
// view pages
$app->get('/{section}[/{page}]', ViewAction::class)->setName('page.view');
// forms
$app->post('/submissions/submit/{id}/{name}', FormPostAction::class)->setName('form.post');
$app->post('/submissions/laposta/{name}', LaPostaAction::class)->setName('laposta.post');
};