Add UFC_Hrpid.
authorFlorent Bruneau <florent.bruneau@polytechnique.org>
Thu, 4 Mar 2010 20:55:34 +0000 (21:55 +0100)
committerFlorent Bruneau <florent.bruneau@polytechnique.org>
Thu, 4 Mar 2010 20:55:34 +0000 (21:55 +0100)
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
classes/userfilter.php

index 474c3fc..27fbf1d 100644 (file)
@@ -70,12 +70,35 @@ class UFC_Hruid implements UserFilterCondition
     public function buildCondition(PlFilter &$uf)
     {
         $ufc->requireAccounts();
-
         return 'a.hruid IN ' . XDB::formatArray($this->hruids);
     }
 }
 // }}}
 
+// {{{ class UFC_Hrpid
+/** Filters users based on the hrpid of their profiles
+ * @param $val Either an hrpid, or a list of those
+ */
+class UFC_Hrpid implements UserFilterCondition
+{
+    private $hrpids;
+
+    public function __construct($val)
+    {
+        if (!is_array($val)) {
+            $val = array($val);
+        }
+        $this->hrpids = $val;
+    }
+
+    public function buildCondition(PlFilter &$uf)
+    {
+        $uf->requireProfiles();
+        return 'p.hrpid IN ' . XDB::formatArray($this->hrpids);
+    }
+}
+// }}}
+
 // {{{ class UFC_Ip
 /** Filters users based on one of their last IPs
  * @param $ip IP from which connection are checked