From 9fee59de2a166b63e2c84a354d51ed5b7568366d Mon Sep 17 00:00:00 2001 From: Petr Skoda Date: Wed, 21 Jun 2023 15:45:45 +0200 Subject: [PATCH] MDL-78541 admin: ignore headings in admin_apply_default_settings() This is a workaround for plugins that do not have unique setting names. --- lib/adminlib.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/adminlib.php b/lib/adminlib.php index 840d606742e..39601545a70 100644 --- a/lib/adminlib.php +++ b/lib/adminlib.php @@ -8916,6 +8916,10 @@ function admin_apply_default_settings($node=null, $unconditional=true, $admindef } else if ($node instanceof admin_settingpage) { foreach ($node->settings as $setting) { + if ($setting->nosave) { + // Not a real setting, must be a heading or description. + continue; + } if (!$unconditional && !is_null($setting->get_setting())) { // Do not override existing defaults. continue;