summaryrefslogtreecommitdiff
path: root/public.php
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2020-09-22 09:34:39 +0300
committerAndrew Dolgov <[email protected]>2020-09-22 09:34:39 +0300
commit490df818aac1def999e519354c9b0e976e4243a0 (patch)
treedd149c9f3de3ae9bd34c202e652c28719a77102b /public.php
parentab6aa0ad3e471d2306ae2beca3c138026950893f (diff)
router: only allow functions without required parameters as handler methods
Diffstat (limited to 'public.php')
-rw-r--r--public.php9
1 files changed, 8 insertions, 1 deletions
diff --git a/public.php b/public.php
index e37c44172..36308e25e 100644
--- a/public.php
+++ b/public.php
@@ -32,7 +32,14 @@
if (implements_interface($handler, "IHandler") && $handler->before($method)) {
if ($method && method_exists($handler, $method)) {
- $handler->$method();
+ $reflection = new ReflectionMethod($handler, $method);
+
+ if ($reflection->getNumberOfRequiredParameters() == 0) {
+ $handler->$method();
+ } else {
+ header("Content-Type: text/json");
+ print error_json(6);
+ }
} else if (method_exists($handler, 'index')) {
$handler->index();
}