commit 7f540d7382977ced1c64f4df1a72f20283b403be
parent 67084370a46e637a74e4b85733bf448dd23f0542
Author: Jan Dankert <devnull@localhost>
Date: Wed, 12 Dec 2018 22:51:14 +0100
Die Include-Konfigurationsdateien aus dem korrekten Ordner lesen. Das war bei API-Requests ein Problem.
Diffstat:
3 files changed, 10 insertions(+), 3 deletions(-)
diff --git a/config/config.yml b/config/config.yml
@@ -10,6 +10,6 @@ database:
password: "dbpass" # password
include:
- - ./config/config-${http:host}.yml
+ - ./config-${http:host}.yml
# There are a lot of more configuration settings available, see file 'config-all-example.yml' ...
diff --git a/modules/cms-core/Dispatcher.class.php b/modules/cms-core/Dispatcher.class.php
@@ -226,8 +226,8 @@ class Dispatcher
$customConfig = $configLoader->load();
$conf = array_replace_recursive($conf, $customConfig);
- $conf['build'] = parse_ini_file('build.ini');
- $conf['version'] = parse_ini_file('version.ini');
+ $conf['build'] = parse_ini_file( __DIR__.'/../../build.ini');
+ $conf['version'] = parse_ini_file( __DIR__.'/../../version.ini');
// Sprache lesen
if ($conf['i18n']['use_http'])
diff --git a/modules/configuration/ConfigurationLoader.class.php b/modules/configuration/ConfigurationLoader.class.php
@@ -79,12 +79,19 @@ class ConfigurationLoader
// Does we have includes?
if (isset($customConfig['include'])) {
+ // 'include' must be an array
if (is_string($customConfig['include']))
$customConfig['include'] = array($customConfig['include']);
// Load include files.
foreach ($customConfig['include'] as $key => $file) {
+ if ( $file[0] == '/')
+ ; // File has an absolute path - do not change.
+ else
+ // Prepend file path with our config directory.
+ $file = __DIR__.'/../../config/'.$file;
+
if (substr($file, -4) == '.yml' ||
substr($file, -5) == '.yaml' ||
substr($file, -8) == '.yml.php' )