summaryrefslogtreecommitdiff
path: root/program
diff options
context:
space:
mode:
authorthomascube <thomas@roundcube.net>2011-12-04 16:56:04 +0000
committerthomascube <thomas@roundcube.net>2011-12-04 16:56:04 +0000
commit5d692ba85ccbcb3f3a2722e026469ada2afc5c9c (patch)
tree10fb0cf0998e2f346fbd9bbc8df23a7c22da0d37 /program
parente8d9073818235ed9615c9a1fe21c7956dd0c7920 (diff)
Accept contact IDs as array or comma-separated string
Diffstat (limited to 'program')
-rw-r--r--program/include/rcube_ldap.php7
1 files changed, 5 insertions, 2 deletions
diff --git a/program/include/rcube_ldap.php b/program/include/rcube_ldap.php
index b25751c21..5c0bd00a5 100644
--- a/program/include/rcube_ldap.php
+++ b/program/include/rcube_ldap.php
@@ -1027,7 +1027,7 @@ class rcube_ldap extends rcube_addressbook
$dn = self::dn_encode($dn);
// add new contact to the selected group
- if ($this->groups)
+ if ($this->group_id)
$this->add_to_group($this->group_id, $dn);
return $dn;
@@ -1722,13 +1722,16 @@ class rcube_ldap extends rcube_addressbook
if (($group_cache = $this->cache->get('groups')) === null)
$group_cache = $this->_fetch_groups();
+ if (!is_array($contact_ids))
+ $contact_ids = explode(',', $contact_ids);
+
$base_dn = $this->groups_base_dn;
$group_name = $group_cache[$group_id]['name'];
$member_attr = $group_cache[$group_id]['member_attr'];
$group_dn = "cn=$group_name,$base_dn";
$new_attrs = array();
- foreach (explode(",", $contact_ids) as $id)
+ foreach ($contact_ids as $id)
$new_attrs[$member_attr][] = self::dn_decode($id);
$this->_debug("C: Add [dn: $group_dn]: ".print_r($new_attrs, true));