]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
integer utility for arguments
authorEvan Prodromou <evan@status.net>
Sat, 12 Dec 2009 20:00:09 +0000 (15:00 -0500)
committerEvan Prodromou <evan@status.net>
Sat, 12 Dec 2009 20:00:09 +0000 (15:00 -0500)
lib/action.php

index 87d8a43993811069a4facf9f9baf810f2dabc2df..dac0e2583c42cf86148e55a155fcb76e3eefc808 100644 (file)
@@ -951,6 +951,36 @@ class Action extends HTMLOutputter // lawsuit
         }
     }
 
+    /**
+     * Integer value of an argument
+     *
+     * @param string $key      query key we're interested in
+     * @param string $defValue optional default value (default null)
+     * @param string $maxValue optional max value (default null)
+     * @param string $minValue optional min value (default null)
+     *
+     * @return integer integer value
+     */
+
+    function int($key, $defValue=null, $maxValue=null, $minValue=null)
+    {
+        $arg = strtolower($this->trimmed($key));
+
+        if (is_null($arg) || !is_integer($arg)) {
+            return $defValue;
+        }
+
+        if (!is_null($maxValue)) {
+            $arg = min($arg, $maxValue);
+        }
+
+        if (!is_null($minValue)) {
+            $arg = max($arg, $minValue);
+        }
+
+        return $arg;
+    }
+
     /**
      * Server error
      *