Revise handlePageAction for multiple plugin instances

This commit is contained in:
billz 2024-11-07 23:25:19 -08:00
parent ce72d2a0ab
commit b33ac6ffa3

View File

@ -80,13 +80,16 @@ class PluginManager
{ {
foreach ($this->getInstalledPlugins() as $pluginClass) { foreach ($this->getInstalledPlugins() as $pluginClass) {
$plugin = new $pluginClass($this->pluginPath, $pluginClass); $plugin = new $pluginClass($this->pluginPath, $pluginClass);
if ($plugin instanceof PluginInterface && $plugin->handlePageAction($page)) {
if ($plugin instanceof PluginInterface) {
// Check if this plugin can handle the page action
if ($plugin->handlePageAction($page)) {
return true; return true;
} else {
continue;
} }
} }
} }
return false; // no plugins handled the page
}
// Returns all installed plugins with full class names // Returns all installed plugins with full class names
public function getInstalledPlugins(): array public function getInstalledPlugins(): array