implement plugin routing masks, add example plugin
parent
5cedb389d2
commit
8dcb2b4762
@ -0,0 +1,7 @@
|
|||||||
|
<?php
|
||||||
|
interface IHandler {
|
||||||
|
function csrf_ignore($method);
|
||||||
|
function before($method);
|
||||||
|
function after();
|
||||||
|
}
|
||||||
|
?>
|
@ -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;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
?>
|
Loading…
Reference in New Issue