diff options
Diffstat (limited to 'lib/group.php')
-rw-r--r-- | lib/group.php | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/lib/group.php b/lib/group.php index 7b137f0f8f1..72cf5dc89af 100644 --- a/lib/group.php +++ b/lib/group.php @@ -237,10 +237,10 @@ class OC_Group { * * Returns a list with all groups */ - public static function getGroups(){ - $groups=array(); - foreach(self::$_usedBackends as $backend){ - $groups=array_merge($backend->getGroups(),$groups); + public static function getGroups($search = '', $limit = -1, $offset = 0) { + $groups = array(); + foreach (self::$_usedBackends as $backend) { + $groups = array_merge($backend->getGroups($search, $limit, $offset), $groups); } asort($groups); return $groups; @@ -264,10 +264,10 @@ class OC_Group { * @brief get a list of all users in a group * @returns array with user ids */ - public static function usersInGroup($gid){ + public static function usersInGroup($gid, $search = '', $limit = -1, $offset = 0) { $users=array(); foreach(self::$_usedBackends as $backend){ - $users=array_merge($backend->usersInGroup($gid),$users); + $users = array_merge($backend->usersInGroup($gid, $search, $limit, $offset), $users); } return $users; } @@ -277,10 +277,11 @@ class OC_Group { * @param array $gids * @returns array with user ids */ - public static function usersInGroups($gids){ + public static function usersInGroups($gids, $search = '', $limit = -1, $offset = 0) { $users = array(); - foreach($gids as $gid){ - $users = array_merge(array_diff(self::usersInGroup($gid), $users), $users); + foreach ($gids as $gid) { + // TODO Need to apply limits to groups as total + $users = array_merge(array_diff(self::usersInGroup($gid, $search, $limit, $offset), $users), $users); } return $users; } |