File: /var/www/vhosts/creativefellows.nl/apics.creativefellows.nl/23062022/config/routes.php
<?php
//use App\Action\Preflight\PreflightAction;
use App\Action\Home\HomeAction;
use App\Action\View\ViewAction;
//use
//use App\Action\Cache\CacheAction;
use App\Action\Form\FormPostAction;
use App\Action\Cookie\CookieAction;
//use App\Action\Upload\UploadAction;
//use App\Action\Download\DownloadAction;
//use App\Action\Hello\HelloAction;
//use App\Middleware\CacheMiddleware;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Slim\App;
use Slim\Routing\RouteCollectorProxy;
use Slim\Interfaces\RouteCollectorProxyInterface as Group;
return function (App $app) {
// home
$app->get('/', HomeAction::class)->setName('home');
// preview
$app->get('/{id:[0-9]+}-{hash}', \App\Action\View\PreviewAction::class)->setName('page.preview');
// xml sitemap
$app->get('/sitemap/xml', \App\Action\Sitemap\XmlSitemapAction::class)->setName('xml.view');
$app->get("/translate/{job_id:[0-9]+}", \App\Action\Translate\TranslateJobAction::class);
// form
$app->post('/submissions/submit/{id}/{name}', FormPostAction::class)->setName('form.post');
$app->get('/submissions/{page}/{name}', ViewAction::class)->setName('form.sent');
// recruitnow feed
$app->group('/recruitnow', function (Group $group) {
//$group->post('/parse-cv', \App\Action\Recruitnow\ParsePdfAction::class)->setName('recruitnow.category.view');
// job feed
$group->get('/feed/imlaxCMGUYiE0GEqZHfygCEdRnoeGiwY', \App\Action\Recruitnow\JobFeedAction::class);
//$group->get('/feed', \App\Action\Recruitnow\JobFeedAction::class);
// response pages
$group->get('/{category}/{page}', \App\Action\Recruitnow\ViewRecruitnowPageAction::class)->setName('recruitnow.category.view');
});
// cookies
$app->post('/accept-cookies', CookieAction::class)->setName('cookies.accept');
// Jobs
$app->group('/{section:[(vacancies|vacatures)]+}', function (Group $group) {
$group->get('[/{page:[0-9]+}]', \App\Action\Jobs\ListJobsAction::class)->setName('jobs.list');
$group->get('/vacancies-{remote_id}-{type:[A-Za-z]+}', \App\Action\Jobs\JobRedirectAction::class);
$group->get('/{job_category}[/{page:[0-9]+}]', \App\Action\Jobs\ListJobsAction::class)->setName('jobs.view.category');
$group->get('/{job_category}/{remote_id}/{job_slug}', \App\Action\Jobs\ViewJobAction::class)->setName('jobs.view');
$group->post('/search', \App\Action\Jobs\SearchJobsAction::class)->setName('jobs.search');
});
// Data feed
$app->get('/feed/vacatures/xml', \App\Action\Xml\ListJobsXml::class);
// view pages
$app->get('/{section}/', ViewAction::class);
$app->get('/{section}[/{page}]', ViewAction::class)->setName('page.view');
};