summaryrefslogtreecommitdiff
path: root/program/steps/addressbook/show.inc
diff options
context:
space:
mode:
authorThomas Bruederli <thomas@roundcube.net>2013-06-18 13:49:19 +0200
committerThomas Bruederli <thomas@roundcube.net>2013-06-18 13:49:19 +0200
commitdd54725b21bf1a5a2c617b70c05ef6fb1681505d (patch)
tree2dc5c88aefc0db0cc8da0431896bb520e9bbdb6e /program/steps/addressbook/show.inc
parentb531277d039c0649736310c9b84efe4758b39537 (diff)
parent03c73fa1c59812d95c843ff63aa692a54521f264 (diff)
Merge branch 'dev-advanced-ldap-groups':
- Refactoring: separated address book implementation from generic LDAP wrapper class - Auto-detect and use VLV indices for all search operations - Additional group configuration options for LDAP address books - Allow address books to display a multi-level group hierarchy in the contacts list
Diffstat (limited to 'program/steps/addressbook/show.inc')
-rw-r--r--program/steps/addressbook/show.inc5
1 files changed, 4 insertions, 1 deletions
diff --git a/program/steps/addressbook/show.inc b/program/steps/addressbook/show.inc
index 1a97c65b1..63abc8c4b 100644
--- a/program/steps/addressbook/show.inc
+++ b/program/steps/addressbook/show.inc
@@ -213,8 +213,11 @@ function rcmail_contact_record_groups($contact_id)
$checkbox = new html_checkbox(array('name' => '_gid[]',
'class' => 'groupmember', 'disabled' => $CONTACTS->readonly));
- foreach ($GROUPS as $group) {
+ foreach (array_merge($GROUPS, $members) as $group) {
$gid = $group['ID'];
+ if ($seen[$gid]++)
+ continue;
+
$table->add(null, $checkbox->show($members[$gid] ? $gid : null,
array('value' => $gid, 'id' => 'ff_gid' . $gid)));
$table->add(null, html::label('ff_gid' . $gid, Q($group['name'])));