summaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
Diffstat (limited to 'apps')
-rwxr-xr-xapps/user_ldap/group_ldap.php10
1 files changed, 7 insertions, 3 deletions
diff --git a/apps/user_ldap/group_ldap.php b/apps/user_ldap/group_ldap.php
index 168476a78ec..01aa2220df5 100755
--- a/apps/user_ldap/group_ldap.php
+++ b/apps/user_ldap/group_ldap.php
@@ -121,8 +121,9 @@ class OC_GROUP_LDAP extends OC_Group_Backend {
}
$result = array();
+ $isMemberUid = (strtolower($this->ldapGroupMemberAssocAttr) == 'memberuid');
foreach($members as $member) {
- if(strtolower($this->ldapGroupMemberAssocAttr) == 'memberuid') {
+ if($isMemberUid) {
$filter = str_replace('%uid', $member, OC_LDAP::conf('ldapLoginFilter'));
$ldap_users = OC_LDAP::fetchListOfUsers($filter, 'dn');
if(count($ldap_users) < 1) {
@@ -130,9 +131,12 @@ class OC_GROUP_LDAP extends OC_Group_Backend {
}
$result[] = OC_LDAP::dn2username($ldap_users[0]);
continue;
+ } else {
+ $result[] = OC_LDAP::dn2username($member);
}
- //de-facto else
- $result[] = OC_LDAP::dn2username($member);
+ }
+ if(!$isMemberUid) {
+ $result = array_intersect($result, OCP\User::getUsers());
}
return array_unique($result, SORT_LOCALE_STRING);
}