|
|
|
@ -74,9 +74,9 @@ abstract class AbstractPicoPlugin implements PicoPluginInterface |
|
|
|
|
if ($pluginEnabled !== null) { |
|
|
|
|
$this->setEnabled($pluginEnabled); |
|
|
|
|
} else { |
|
|
|
|
$pluginConfig = $this->getConfig(get_called_class()); |
|
|
|
|
if (is_array($pluginConfig) && isset($pluginConfig['enabled'])) { |
|
|
|
|
$this->setEnabled($pluginConfig['enabled']); |
|
|
|
|
$pluginEnabled = $this->getPluginConfig('enabled'); |
|
|
|
|
if ($pluginEnabled !== null) { |
|
|
|
|
$this->setEnabled($pluginEnabled); |
|
|
|
|
} elseif ($this->enabled) { |
|
|
|
|
// make sure dependencies are already fulfilled, |
|
|
|
|
// otherwise the plugin needs to be enabled manually |
|
|
|
@ -135,6 +135,29 @@ abstract class AbstractPicoPlugin implements PicoPluginInterface |
|
|
|
|
return $this->pico; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Returns either the value of the specified plugin config variable or |
|
|
|
|
* the config array |
|
|
|
|
* |
|
|
|
|
* @param string $configName optional name of a config variable |
|
|
|
|
* @return mixed returns either the value of the named plugin |
|
|
|
|
* config variable, null if the config variable doesn't exist or the |
|
|
|
|
* plugin's config array if no config name was supplied |
|
|
|
|
*/ |
|
|
|
|
protected function getPluginConfig($configName = null) |
|
|
|
|
{ |
|
|
|
|
$pluginConfig = $this->getConfig(get_called_class()); |
|
|
|
|
if ($pluginConfig) { |
|
|
|
|
if ($configName === null) { |
|
|
|
|
return $pluginConfig; |
|
|
|
|
} elseif (isset($pluginConfig[$configName])) { |
|
|
|
|
return $pluginConfig[$configName]; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return null; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Passes all not satisfiable method calls to Pico |
|
|
|
|
* |
|
|
|
|