chg: [settingsTable] Use settings array for the actual saving in saveSetting

- allows us to modify a value in the processing steps before the value is committed to disk
cli-modification-summary
iglocska 2022-01-27 20:57:35 +01:00
parent 665999b8f4
commit 7834ab3d62
No known key found for this signature in database
GPG Key ID: BEA224F1FEF113AC
1 changed files with 2 additions and 2 deletions

View File

@ -72,15 +72,15 @@ class SettingsTable extends AppTable
}
}
}
$setting['value'] = $value ?? '';
if (empty($errors) && !empty($setting['beforeSave'])) {
$setting['value'] = $value ?? '';
$beforeSaveResult = $this->SettingsProvider->evaluateFunctionForSetting($setting['beforeSave'], $setting);
if ($beforeSaveResult !== true) {
$errors[] = $beforeSaveResult;
}
}
if (empty($errors)) {
$saveResult = $this->saveSettingOnDisk($name, $value);
$saveResult = $this->saveSettingOnDisk($name, $setting['value']);
if ($saveResult) {
if (!empty($setting['afterSave'])) {
$this->SettingsProvider->evaluateFunctionForSetting($setting['afterSave'], $setting);