Fix Profile::getWebSite().
[platal.git] / classes / group.php
index 1268ded..ce93e92 100644 (file)
@@ -61,16 +61,28 @@ class Group
         return new UserFilter($cond, $sort);
     }
 
-    public function getMembers($extra_cond = null, $sort = null)
+    public function getMembersFilter($extra_cond = null, $sort = null)
     {
         return $this->getUF(false, $extra_cond, $sort);
     }
 
-    public function getAdmins($extra_cond = null, $sort = null)
+    public function getAdminsFilter($extra_cond = null, $sort = null)
     {
         return $this->getUF(true, $extra_cond, $sort);
     }
 
+    public function iterMembers($extra_cond = null, $sort = null, $limit = null)
+    {
+        $uf = getMembersFilter($extra_cond, $sort);
+        return $uf->iterUsers($limit);
+    }
+
+    public function iterAdmins($extra_cond = null, $sort = null, $limit = null)
+    {
+        $uf = getAdminsFilter($extra_cond, $sort);
+        return $uf->iterUsers($limit);
+    }
+
     public function getLogo($fallback = true)
     {
         if (!empty($this->logo)) {
@@ -86,7 +98,7 @@ class Group
         if (!$id) {
             return null;
         }
-        if (ctype_digit($id)) {
+        if (is_int($id) || ctype_digit($id)) {
             $where = XDB::format('id = {?}', $id);
         } else {
             $where = XDB::format('diminutif = {?}', $id);