From ec08cd937499412bf1cb04d2549797f8fefc2834 Mon Sep 17 00:00:00 2001 From: Andy Miller Date: Wed, 9 Dec 2015 10:13:44 -0700 Subject: [PATCH] Better fix for GPM issues --- system/src/Grav/Common/Plugins.php | 11 +++++------ system/src/Grav/Common/Themes.php | 17 +++++++++++------ 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/system/src/Grav/Common/Plugins.php b/system/src/Grav/Common/Plugins.php index 1cb704d86..de479e138 100644 --- a/system/src/Grav/Common/Plugins.php +++ b/system/src/Grav/Common/Plugins.php @@ -105,12 +105,11 @@ class Plugins extends Iterator } $plugin = $directory->getBasename(); + $result = self::get($plugin); - $filePath = $locator->findResource('plugins://' . $plugin . DS . $plugin . PLUGIN_EXT); - if (!is_file($filePath)) { - continue; + if ($result) { + $list[$plugin] = $result; } - $list[$plugin] = self::get($plugin); } } ksort($list); @@ -125,9 +124,9 @@ class Plugins extends Iterator $blueprint->name = $name; // Load default configuration. - $file = CompiledYamlFile::instance("plugins://{$name}/{$name}.yaml"); + $file = CompiledYamlFile::instance("plugins://{$name}/{$name}" . YAML_EXT); - // ensure the plugin exists physically + // ensure this is a valid plugin if (!$file->exists()) { return null; } diff --git a/system/src/Grav/Common/Themes.php b/system/src/Grav/Common/Themes.php index 970ed9f10..2f020f7a4 100644 --- a/system/src/Grav/Common/Themes.php +++ b/system/src/Grav/Common/Themes.php @@ -87,12 +87,11 @@ class Themes extends Iterator } $theme = $directory->getBasename(); + $result = self::get($theme); - $filePath = $locator->findResource('themes://' . $theme . DS . $theme . PLUGIN_EXT); - if (!is_file($filePath)) { - continue; + if ($result) { + $list[$theme] = $result; } - $list[$theme] = self::get($theme); } } ksort($list); @@ -117,14 +116,20 @@ class Themes extends Iterator $blueprint = $blueprints->get("{$name}/blueprints"); $blueprint->name = $name; + // Load default configuration. + $file = CompiledYamlFile::instance("themes://{$name}/{$name}" . YAML_EXT); + + // ensure this is a valid theme + if (!$file->exists()) { + return null; + } + // Find thumbnail. $thumb = "themes://{$name}/thumbnail.jpg"; if ($path = $this->grav['locator']->findResource($thumb, false)) { $blueprint->set('thumbnail', $this->grav['base_url'] . '/' . $path); } - // Load default configuration. - $file = CompiledYamlFile::instance("themes://{$name}/{$name}" . YAML_EXT); $obj = new Data($file->content(), $blueprint); // Override with user configuration.