summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--settings/ajax/grouplist.php4
-rw-r--r--settings/ajax/userlist.php7
2 files changed, 6 insertions, 5 deletions
diff --git a/settings/ajax/grouplist.php b/settings/ajax/grouplist.php
index 52df98c4e5e..93bb510773d 100644
--- a/settings/ajax/grouplist.php
+++ b/settings/ajax/grouplist.php
@@ -38,9 +38,7 @@ $adminGroups = array();
$groupManager = \OC_Group::getManager();
$isAdmin = OC_User::isAdminUser(OC_User::getUser());
-//we pass isAdmin as true, because OC_SubAdmin has no search feature,
-//groups will be filtered out later
-$groupsInfo = new \OC\Group\MetaData(OC_User::getUser(), true, $groupManager);
+$groupsInfo = new \OC\Group\MetaData(OC_User::getUser(), $isAdmin, $groupManager);
$groupsInfo->setSorting($groupsInfo::SORT_USERCOUNT);
list($adminGroups, $groups) = $groupsInfo->get($groupPattern, $pattern);
diff --git a/settings/ajax/userlist.php b/settings/ajax/userlist.php
index 2bf40686b87..a99c221beb8 100644
--- a/settings/ajax/userlist.php
+++ b/settings/ajax/userlist.php
@@ -76,10 +76,13 @@ if (OC_User::isAdminUser(OC_User::getUser())) {
$batch = OC_Group::usersInGroups($groups, $pattern, $limit, $offset);
foreach ($batch as $uid) {
$user = $userManager->get($uid);
+
+ // Only add the groups, this user is a subadmin of
+ $userGroups = array_intersect(OC_Group::getUserGroups($uid), OC_SubAdmin::getSubAdminsGroups(OC_User::getUser()));
$users[] = array(
- 'name' => $user,
+ 'name' => $uid,
'displayname' => $user->getDisplayName(),
- 'groups' => join(', ', OC_Group::getUserGroups($uid)),
+ 'groups' => join(', ', $userGroups),
'quota' => OC_Preferences::getValue($uid, 'files', 'quota', 'default'),
'storageLocation' => $user->getHome(),
'lastLogin' => $user->getLastLogin(),