X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=app%2Fbootstrap%2Fconfig.php;h=e4d47729b32f92647456fd55aa632238280cdec5;hb=2f593903bb0b095e3ecaece6c8e73ab3410af64f;hp=cbf70d2d80bc843353af6b0b9be05585c6af6671;hpb=8e9bbe581c9ee4cdd538bf798e5d72780ef82437;p=pharext%2Fpharext.org diff --git a/app/bootstrap/config.php b/app/bootstrap/config.php index cbf70d2..e4d4772 100644 --- a/app/bootstrap/config.php +++ b/app/bootstrap/config.php @@ -2,25 +2,23 @@ namespace app; -use merry\Config; - define("APP_ENVIRONMENT", getenv("APP_ENVIRONMENT") ?: "localhost"); $injector->share(Config::class) ->define(Config::class, [ - ":array" => parse_ini_file(__DIR__."/../config.ini", true), + "+array" => function($key, $injector) { + $settings = parse_ini_file(__DIR__."/../../config/app.ini", true); + if (!$settings) { + throw new \Exception("Could not parse settings"); + } + return $settings; + }, ":section" => APP_ENVIRONMENT ]) - ->prepare(Config::class, function(Config $config) { - $credentials = parse_ini_file(__DIR__."/../credentials.ini", true); - foreach (new Config($credentials, APP_ENVIRONMENT) as $app => $creds) { - /* one level down should suffice, i.e. $config->github->client = {id,secret,scope} */ - if ($creds instanceof Config) { - foreach ($creds as $key => $val) { - $config->$app->$key = $val; - } - } else { - $config->$app = $creds; - } + ->prepare(Config::class, function($config, $injector) { + $credentials = parse_ini_file(__DIR__."/../../config/credentials.ini", true); + if (!$credentials) { + throw new \Exception("Could not parse credentials"); } + $config->addConfig(new Config($credentials, APP_ENVIRONMENT)); });