1
0
Fork 0
mirror of https://codeberg.org/demostf/api.git synced 2026-06-04 02:14:06 +02:00

hook everything up into a working system

This commit is contained in:
Robin Appelman 2017-04-11 01:00:21 +02:00
commit 9024e368c7
12 changed files with 204 additions and 81 deletions

View file

@ -1,27 +1,21 @@
<?php declare(strict_types = 1);
<?php declare(strict_types=1);
namespace Demostf\API;
require_once __DIR__ . '/init.php';
use Demostf\API\Providers\Container;
use Flight;
$connectionParams = array(
'dbname' => getenv('DB_DATABASE'),
'user' => getenv('DB_USERNAME'),
'password' => getenv('DB_PASSWORD'),
'host' => getenv('DB_HOST'),
'driver' => getenv('DB_TYPE'),
);
if ($connectionParams['driver'] === 'pgsql') {
$connectionParams['driver'] = 'pdo_pgsql';
}
$db = \Doctrine\DBAL\DriverManager::getConnection($connectionParams);
$host = getenv('BASE_HOST');
$storeRoot = getenv('DEMO_ROOT');
/** @var Container $container */
$container = require __DIR__ . '/init.php';
$demoProvider = new Providers\DemoProvider($db);
$uploadController = new Controllers\UploadController($container->getUploadProvider());
$factory = new \RandomLib\Factory;
$generator = $factory->getMediumStrengthGenerator();
$userProvider = new Providers\UserProvider($db, $generator);
$store = new Demo\DemoStore($storeRoot, 'static.' . $host);
$uploadController = new Controllers\UploadController($demoProvider, $userProvider, new Demo\Parser(), $store);
$uploadController->upload();
Flight::route('/*', function () {
header('Access-Control-Allow-Origin: *');
return true;
});
Flight::route('/upload', [$uploadController, 'upload']);
Flight::route('/do_upload', [$uploadController, 'upload']);
Flight::start();