2021-03-25 23:33:37 -03:00
|
|
|
<?php
|
|
|
|
use DI\ContainerBuilder as Builder;
|
|
|
|
use DI\Bridge\Slim\Bridge;
|
|
|
|
|
|
|
|
include_once 'composer.php';
|
|
|
|
|
|
|
|
$folders = [
|
2022-03-07 09:59:51 -03:00
|
|
|
'settings',
|
2021-03-25 23:33:37 -03:00
|
|
|
'setups'
|
|
|
|
];
|
|
|
|
$builder = new Builder();
|
2023-06-22 23:15:17 -04:00
|
|
|
if (isset($__environment)) {
|
|
|
|
$builder->addDefinitions(['environment' => $__environment]);
|
|
|
|
}
|
2022-03-07 09:59:51 -03:00
|
|
|
foreach ($folders as $f) {
|
|
|
|
$folder = implode(DIRECTORY_SEPARATOR, [
|
|
|
|
__DIR__,
|
|
|
|
$f
|
|
|
|
]);
|
|
|
|
if (!file_exists($folder)) {
|
|
|
|
continue;
|
|
|
|
}
|
|
|
|
$files = new DirectoryIterator($folder);
|
|
|
|
foreach ($files as $file) {
|
|
|
|
if ($file->isDir() or $file->getExtension() != 'php') {
|
2021-03-25 23:33:37 -03:00
|
|
|
continue;
|
|
|
|
}
|
2022-03-07 09:59:51 -03:00
|
|
|
$builder->addDefinitions($file->getRealPath());
|
2021-03-25 23:33:37 -03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
$container = $builder->build();
|
|
|
|
$app = Bridge::create($container);
|
2022-03-07 09:59:51 -03:00
|
|
|
if ($app->getContainer()->has('base_url') and $app->getContainer()->get('base_url') != '') {
|
|
|
|
$app->setBasePath($app->getContainer()->get('base_url'));
|
|
|
|
}
|
2021-03-25 23:33:37 -03:00
|
|
|
$app->addRoutingMiddleware();
|
|
|
|
|
|
|
|
foreach ($folders as $folder) {
|
|
|
|
$filename = implode(DIRECTORY_SEPARATOR, [
|
|
|
|
__DIR__,
|
|
|
|
$folder,
|
|
|
|
'middleware.php'
|
|
|
|
]);
|
|
|
|
if (!file_exists($filename)) {
|
|
|
|
continue;
|
|
|
|
}
|
|
|
|
include_once $filename;
|
|
|
|
}
|
|
|
|
|
|
|
|
$app->addErrorMiddleware(true, true, true);
|
|
|
|
|
|
|
|
include_once 'database.php';
|
|
|
|
|
|
|
|
include_once 'router.php';
|
2023-06-22 23:15:17 -04:00
|
|
|
|
|
|
|
return $app;
|