diff options
Diffstat (limited to 'plugins/example_routing/example_routing.php')
-rw-r--r-- | plugins/example_routing/example_routing.php | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/plugins/example_routing/example_routing.php b/plugins/example_routing/example_routing.php new file mode 100644 index 000000000..a5c4e6139 --- /dev/null +++ b/plugins/example_routing/example_routing.php @@ -0,0 +1,46 @@ +<?php +class Example_Routing extends Plugin implements IHandler { + + // Demonstrates adding a custom handler and method: + // backend.php?op=test&method=example + // and masking a system builtin public method: + // public.php?op=getUnread + + // Plugin class must implelement IHandler interface and has + // a public method of same name as being registered. + // + // Any system method may be masked by plugins. + + private $link; + private $host; + + function __construct($host) { + $this->link = $host->get_link(); + $this->host = $host; + + $host->add_handler("test", "example", $this); + $host->add_handler("public", "getunread", $this); + } + + function getunread() { + print rand(0,100); # yeah right + } + + function example() { + print "example method called"; + } + + function csrf_ignore($method) { + return true; + } + + function before($method) { + return true; + } + + function after() { + return true; + } + +} +?> |