Skip to content
Snippets Groups Projects
Commit 6419148b authored by Marc Egger's avatar Marc Egger
Browse files

Config.php replace old style config variables when migrating to json

parent edfda4bd
No related branches found
No related tags found
2 merge requests!302Develop,!296Marc: Form/Report As File, Path class, Config class, Typo3 v9 compatability
Pipeline #3980 failed
......@@ -462,4 +462,23 @@ class OnArray {
{
return array_filter($keys, function($key) use ($array) {return !isset($array[$key]);});
}
/**
* Rename keys according to the associative array given as first argument (only if the key exists).
* Return changed array.
*
* @param array $renameMap old-key => new-key
* @param array $array
* @param bool $overwrite overwrite value from existing new-key with value of old-key
* @return array
*/
public static function renameKeys(array $renameMap, array $array, bool $overwrite = false) {
foreach ($renameMap as $keyOld => $keyNew) {
if (isset($array[$keyOld]) && (!isset($array[$keyNew]) || $overwrite)) {
$array[$keyNew] = $array[$keyOld];
unset($array[$keyOld]);
}
}
return $array;
}
}
\ No newline at end of file
......@@ -11,6 +11,7 @@ namespace IMATHUZH\Qfq\Core\Store;
use IMATHUZH\Qfq\Core\Exception\Thrower;
use IMATHUZH\Qfq\Core\Helper\HelperFile;
use IMATHUZH\Qfq\Core\Helper\Logger;
use IMATHUZH\Qfq\Core\Helper\OnArray;
use IMATHUZH\Qfq\Core\Helper\Path;
use IMATHUZH\Qfq\Core\Helper\Support;
use IMATHUZH\Qfq\Core\Helper\OnString;
......@@ -172,6 +173,14 @@ class Config {
HelperFile::enforce_writable($cwdToOldConfigFile); // so we can delete it.
$config = include($cwdToOldConfigFile);
// In case the database credentials are given in the old style: rename the keys
$config = OnArray::renameKeys([
SYSTEM_DB_USER => SYSTEM_DB_1_USER,
SYSTEM_DB_SERVER => SYSTEM_DB_1_SERVER,
SYSTEM_DB_PASSWORD => SYSTEM_DB_1_PASSWORD,
SYSTEM_DB_NAME => SYSTEM_DB_1_NAME
], $config);
// write new qfq.config.json
self::writeConfig($config);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment