From c1e2ce76c731fea1b21142110bcacd5986d83dc8 Mon Sep 17 00:00:00 2001
From: Bartlomiej Nogas <bart.nogas@gmail.com>
Date: Tue, 21 Oct 2014 06:05:35 -0400
Subject: [PATCH] Add configuration option 'acl_group_field' to use as ACL group identifier
---
plugins/acl/acl.php | 10 ++++++----
1 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/plugins/acl/acl.php b/plugins/acl/acl.php
index 33bd91e..cc4d996 100644
--- a/plugins/acl/acl.php
+++ b/plugins/acl/acl.php
@@ -114,14 +114,16 @@
}
if ($this->rc->config->get('acl_groups')) {
- $prefix = $this->rc->config->get('acl_group_prefix');
- $result = $this->ldap->list_groups($search, $mode);
+ $prefix = $this->rc->config->get('acl_group_prefix');
+ $group_field = $this->rc->config->get('acl_group_field') ? $this->rc->config->get('acl_group_field') : 'name';
+ $result = $this->ldap->list_groups($search, $mode);
foreach ($result as $record) {
- $group = $record['name'];
+ $group = $record['name'];
+ $group_id = is_array($record[$group_field]) ? $record[$group_field][0] : $record[$group_field];
if ($group) {
- $users[] = array('name' => ($prefix ? $prefix : '') . $group, 'display' => $group);
+ $users[] = array('name' => ($prefix ? $prefix : '') . $group_id, 'display' => $group);
$keys[] = $group;
}
}
--
Gitblit v1.9.1