X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=lib%2Faction.php;h=50370c09feca6086b4b1a68a03f26b9ed174b111;hb=fb3029d74e5552641d005079de422e762e7ac73b;hp=e604b1304d93cdbe334193c91adf75586457fe32;hpb=24ee48e6d58db92a23e24e87b1b53f012e456cfa;p=quix0rs-gnu-social.git diff --git a/lib/action.php b/lib/action.php index e604b1304d..50370c09fe 100644 --- a/lib/action.php +++ b/lib/action.php @@ -1,18 +1,18 @@ . */ @@ -22,22 +22,42 @@ if (!defined('LACONICA')) { exit(1); } class Action { // lawsuit var $args; - + function Action() { } - + function arg($key) { - if (array_has_key($this->args, $key)) { + if (array_key_exists($key, $this->args)) { return $this->args[$key]; } else { return NULL; } } + + function trimmed($key) { + $arg = $this->arg($key); + return (is_string($arg)) ? trim($arg) : $arg; + } function handle($argarray) { + $strip = get_magic_quotes_gpc(); $this->args = array(); foreach ($argarray as $k => $v) { - $this->args[$k] = $v; + $this->args[$k] = ($strip) ? stripslashes($v) : $v; + } + } + + function boolean($key, $def=false) { + $arg = strtolower($this->trimmed($key)); + + if (is_null($arg)) { + return $def; + } else if (in_array($arg, array('true', 'yes', '1'))) { + return true; + } else if (in_array($arg, array('false', 'no', '0'))) { + return false; + } else { + return $def; } } }