Remove limit and offset manipulation when getting users or groups, because it does not work when more than one user or group backend. Fixing it would be too costly performancewise, so we switch back to the model used in OC 5: limit and offset are effective per backend, and not a general constraint

remotes/origin/ldap_group_count
Arthur Schiwon 2014-04-15 17:46:48 +07:00
parent d826f33fae
commit 64679b2e62
3 changed files with 0 additions and 32 deletions

@ -172,12 +172,6 @@ class Group {
$users = array();
foreach ($this->backends as $backend) {
$userIds = $backend->usersInGroup($this->gid, $search, $limit, $offset);
if (!is_null($limit)) {
$limit -= count($userIds);
}
if (!is_null($offset)) {
$offset -= count($userIds);
}
$users += $this->getVerifiedUsers($userIds);
if (!is_null($limit) and $limit <= 0) {
return array_values($users);
@ -223,12 +217,6 @@ class Group {
} else {
$userIds = $backend->usersInGroup($this->gid, $search, $limit, $offset);
}
if (!is_null($limit)) {
$limit -= count($userIds);
}
if (!is_null($offset)) {
$offset -= count($userIds);
}
$users = $this->getVerifiedUsers($userIds);
if (!is_null($limit) and $limit <= 0) {
return array_values($users);

@ -134,12 +134,6 @@ class Manager extends PublicEmitter {
$groups = array();
foreach ($this->backends as $backend) {
$groupIds = $backend->getGroups($search, $limit, $offset);
if (!is_null($limit)) {
$limit -= count($groupIds);
}
if (!is_null($offset)) {
$offset -= count($groupIds);
}
foreach ($groupIds as $groupId) {
$groups[$groupId] = $this->getGroupObject($groupId);
}

@ -175,13 +175,6 @@ class Manager extends PublicEmitter {
if (is_array($backendUsers)) {
foreach ($backendUsers as $uid) {
$users[] = $this->getUserObject($uid, $backend);
if (!is_null($limit)) {
$limit--;
}
if (!is_null($offset) and $offset > 0) {
$offset--;
}
}
}
}
@ -211,13 +204,6 @@ class Manager extends PublicEmitter {
if (is_array($backendUsers)) {
foreach ($backendUsers as $uid => $displayName) {
$users[] = $this->getUserObject($uid, $backend);
if (!is_null($limit)) {
$limit--;
}
if (!is_null($offset) and $offset > 0) {
$offset--;
}
}
}
}