mirror of
https://github.com/slawkens/myaac.git
synced 2026-02-03 11:56:22 +01:00
Settings: Fix variable overlapping if same var name as in core
Example: Plugin has setting key named "env". The same key exist in core. It would falsely get value from core, instead of the plugin
This commit is contained in:
@@ -122,18 +122,21 @@ class Settings implements \ArrayAccess
|
|||||||
public static function display($plugin, $settings): array
|
public static function display($plugin, $settings): array
|
||||||
{
|
{
|
||||||
$settingsDb = ModelsSettings::where('name', $plugin)->pluck('value', 'key')->toArray();
|
$settingsDb = ModelsSettings::where('name', $plugin)->pluck('value', 'key')->toArray();
|
||||||
$config = [];
|
|
||||||
require BASE . 'config.local.php';
|
|
||||||
|
|
||||||
foreach ($config as $key => $value) {
|
if ($plugin === 'core') {
|
||||||
if (is_bool($value)) {
|
$config = [];
|
||||||
$settingsDb[$key] = $value ? 'true' : 'false';
|
require BASE . 'config.local.php';
|
||||||
}
|
|
||||||
elseif (is_array($value)) {
|
foreach ($config as $key => $value) {
|
||||||
$settingsDb[$key] = $value;
|
if (is_bool($value)) {
|
||||||
}
|
$settingsDb[$key] = $value ? 'true' : 'false';
|
||||||
else {
|
}
|
||||||
$settingsDb[$key] = (string)$value;
|
elseif (is_array($value)) {
|
||||||
|
$settingsDb[$key] = $value;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$settingsDb[$key] = (string)$value;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user