From c5584ba40f87abefdb98b8fa93f4aefc977d1a39 Mon Sep 17 00:00:00 2001 From: Gary Jones Date: Mon, 7 Aug 2017 15:31:26 +0100 Subject: [PATCH] ThemeSettings: Check keys exist before using them --- src/ThemeSettings.php | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/ThemeSettings.php b/src/ThemeSettings.php index 241b65b..892cab9 100644 --- a/src/ThemeSettings.php +++ b/src/ThemeSettings.php @@ -101,11 +101,15 @@ class ThemeSettings extends Brick */ public function apply() { - // Change the theme settings defaults. - add_filter('genesis_theme_settings_defaults', [ $this, 'themeSettingsDefaults' ]); + if ($this->config->hasKey(self::DEFAULTS)) { + // Change the theme settings defaults. + add_filter('genesis_theme_settings_defaults', [$this, 'themeSettingsDefaults']); + } - // Force specific values to be returned. - $this->forceValues(); + if ($this->config->hasKey(self::FORCE)) { + // Force specific values to be returned. + $this->forceValues(); + } } /** @@ -118,7 +122,7 @@ public function themeSettingsDefaults($defaults): array { $defaultsConfig = $this->config->getSubConfig(self::DEFAULTS); foreach ($defaultsConfig->getArrayCopy() as $key => $value) { - $defaults[ $key ] = $value; + $defaults[$key] = $value; } return $defaults;