X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=lib%2Faction.php;h=a4cae7066c0e06b34ccf3012d151333498b46993;hb=171b4f72ee5a84d2a67b99aca7df9406e68f60c1;hp=9b7988a190e031bf69c449f6808dfd08b076c967;hpb=764a391d196287a9400ee597019c3e5207c5a5f0;p=quix0rs-gnu-social.git diff --git a/lib/action.php b/lib/action.php index 9b7988a190..a4cae7066c 100644 --- a/lib/action.php +++ b/lib/action.php @@ -40,9 +40,36 @@ class Action { // lawsuit } 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; + } + } + + function server_error($msg, $code=500) { + $action = $this->trimmed('action'); + common_debug("Server error '$code' on '$action': $msg", __FILE__); + common_server_error($msg, $code); + } + + function client_error($msg, $code=400) { + $action = $this->trimmed('action'); + common_debug("User error '$code' on '$action': $msg", __FILE__); + common_user_error($msg, $code); + } }