Only retrieves uids from MLs users if there are some.
authorStéphane Jacob <sj@m4x.org>
Tue, 10 May 2011 19:40:34 +0000 (21:40 +0200)
committerStéphane Jacob <sj@m4x.org>
Tue, 10 May 2011 19:40:34 +0000 (21:40 +0200)
Signed-off-by: Stéphane Jacob <sj@m4x.org>
modules/xnetgrp.php

index 2fda2ef..de4f48c 100644 (file)
@@ -460,15 +460,19 @@ class XnetGrpModule extends PLModule
         }
         $nonusers = array_unique($nonusers);
         $uids = array_unique($uids);
-        $uids = XDB::fetchColumn('SELECT  a.uid
-                                    FROM  accounts AS a
-                                   WHERE  a.uid IN {?} AND NOT EXISTS (SELECT  *
-                                                                         FROM  group_members AS g
-                                                                        WHERE  a.uid = g.uid AND g.asso_id = {?})',
-                                 $uids, $globals->asso('id'));
-
-        $users = User::getBulkUsersWithUIDs($uids);
-        usort($users, 'User::compareDirectoryName');
+        if (count($uids)) {
+            $uids = XDB::fetchColumn('SELECT  a.uid
+                                        FROM  accounts AS a
+                                       WHERE  a.uid IN {?} AND NOT EXISTS (SELECT  *
+                                                                             FROM  group_members AS g
+                                                                            WHERE  a.uid = g.uid AND g.asso_id = {?})',
+                                     $uids, $globals->asso('id'));
+
+            $users = User::getBulkUsersWithUIDs($uids);
+            usort($users, 'User::compareDirectoryName');
+        } else {
+            $users = array();
+        }
         sort($nonusers);
 
         $page->assign('users', $users);