1
0
Fork 0
mirror of https://github.com/friendica/friendica-directory synced 2024-11-15 00:17:36 +01:00
friendica-docker/src/routes.php
Hypolite Petovan e36805c206 Add Custom Pages feature
- Add config/pages directory
- Add new custom pages controller and route
- Add generated links in the footer
2018-11-19 22:12:09 -05:00

49 lines
1.5 KiB
PHP

<?php
use Slim\Http\Request;
use Slim\Http\Response;
// Routes
/**
* @var $app \Slim\App
*/
$app->get('/servers', \Friendica\Directory\Routes\Web\Servers::class);
$app->get('/search[/{account_type}]', function (Request $request, Response $response, $args) {
if ($request->getAttribute('negotiation')->getMediaType() == 'application/json') {
$route = new \Friendica\Directory\Routes\Http\Search($this);
} else {
$route = new \Friendica\Directory\Routes\Web\Search($this);
}
return $route($request, $response, $args);
})->setName('search');
$app->get('/stats', \Friendica\Directory\Routes\Web\Statistics::class);
$app->get('/submit', \Friendica\Directory\Routes\Http\Submit::class);
$app->get('/photo/{profile_id:[0-9]+}.jpg', \Friendica\Directory\Routes\Http\Photo::class)->setName('photo');
$app->get('/sync/pull/all', \Friendica\Directory\Routes\Http\SyncPull::class);
$app->get('/sync/pull/since/{since}', \Friendica\Directory\Routes\Http\SyncPull::class);
$app->get('/VERSION', function (Request $request, Response $response) {
$response->getBody()->write(file_get_contents(__DIR__ . '/../VERSION'));
return $response;
});
foreach(glob(__DIR__ . '/../config/pages/*.html') as $page) {
$app->get('/' . strtolower(basename($page, '.html')), function (Request $request, Response $response, $args) use ($page) {
$route = new \Friendica\Directory\Routes\Web\Pages($this, $page);
return $route($request, $response, $args);
});
}
$app->get('/[{account_type}]', \Friendica\Directory\Routes\Web\Directory::class)->setName('directory');