. * */ OC_JSON::callCheck(); OC_JSON::checkSubAdminUser(); if (isset($_GET['offset'])) { $offset = $_GET['offset']; } else { $offset = 0; } if (isset($_GET['limit'])) { $limit = $_GET['limit']; } else { $limit = 10; } $users = array(); $userManager = \OC_User::getManager(); if (OC_User::isAdminUser(OC_User::getUser())) { $batch = OC_User::getDisplayNames('', $limit, $offset); foreach ($batch as $uid => $displayname) { $user = $userManager->get($uid); $users[] = array( 'name' => $uid, 'displayname' => $displayname, 'groups' => join(', ', OC_Group::getUserGroups($uid)), 'subadmin' => join(', ', OC_SubAdmin::getSubAdminsGroups($uid)), 'quota' => OC_Preferences::getValue($uid, 'files', 'quota', 'default'), 'storageLocation' => $user->getHome(), 'lastLogin' => $user->getLastLogin(), ); } } else { $groups = OC_SubAdmin::getSubAdminsGroups(OC_User::getUser()); $batch = OC_Group::usersInGroups($groups, '', $limit, $offset); foreach ($batch as $uid) { $user = $userManager->get($uid); $users[] = array( 'name' => $user, 'displayname' => $user->getDisplayName(), 'groups' => join(', ', OC_Group::getUserGroups($uid)), 'quota' => OC_Preferences::getValue($uid, 'files', 'quota', 'default'), 'storageLocation' => $user->getHome(), 'lastLogin' => $user->getLastLogin(), ); } } OC_JSON::success(array('data' => $users));