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

upload wip

This commit is contained in:
Robin Appelman 2017-01-31 13:34:54 +01:00
commit fca5d7b0a6
15 changed files with 2146 additions and 164 deletions

21
app.php
View file

@ -2,16 +2,30 @@
$autoloader = require 'vendor/autoload.php';
$autoloader->setPsr4('Providers\\', __DIR__ . '/Providers');
$autoloader->setPsr4('Demo\\', __DIR__ . '/Demo');
$autoloader->setPsr4('Controllers\\', __DIR__ . '/Controllers');
use WindowsAzure\Common\ServicesBuilder;
if (!getenv('DB_TYPE')) {
Dotenv::load(__DIR__);
}
$dsn = getenv('DB_TYPE') . ':dbname=' . getenv('DB_DATABASE') . ';host=' . getenv('DB_HOST');
$db = new \PDO($dsn, getenv('DB_USERNAME'), getenv('DB_PASSWORD'));
$azureConnectionString = 'DefaultEndpointsProtocol=https;AccountName=' . getenv('AZURE_ACCOUNT') . ';AccountKey=' . getenv('AZURE_KEY');
$blobRestProxy = ServicesBuilder::getInstance()->createBlobService($azureConnectionString);
$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);
$demoProvider = new \Providers\DemoProvider($db);
$demoProvider = new \Providers\DemoProvider($db, new \Demo\AzureStore($blobRestProxy));
$factory = new \RandomLib\Factory;
$generator = $factory->getMediumStrengthGenerator();
@ -20,6 +34,7 @@ $userProvider = new \Providers\UserProvider($db, $generator);
$demoController = new \Controllers\DemoController($demoProvider);
$authController = new \Controllers\AuthController($userProvider, $authProvider);
$userController = new \Controllers\UserController($userProvider);
$uploadController = new \Controllers\UploadController($demoProvider, $userProvider, new \Demo\Parser());
Flight::route('/*', function () {
header('Access-Control-Allow-Origin: *');