summaryrefslogtreecommitdiff
path: root/public.php
diff options
context:
space:
mode:
Diffstat (limited to 'public.php')
-rw-r--r--public.php11
1 files changed, 9 insertions, 2 deletions
diff --git a/public.php b/public.php
index 59e0ef2e3..4cf7653f9 100644
--- a/public.php
+++ b/public.php
@@ -40,9 +40,16 @@
$method = $_REQUEST["op"];
- $handler = new Handler_Public($link, $_REQUEST);
+ global $pluginhost;
+ $override = $pluginhost->lookup_handler("public", $method);
- if ($handler->before($method)) {
+ if ($override) {
+ $handler = $override;
+ } else {
+ $handler = new Handler_Public($link, $_REQUEST);
+ }
+
+ if (implements_interface($handler, "IHandler") && $handler->before($method)) {
if ($method && method_exists($handler, $method)) {
$handler->$method();
} else if (method_exists($handler, 'index')) {