summaryrefslogtreecommitdiff
path: root/roundcubemail/program/include/rcube_ldap.php
diff options
context:
space:
mode:
authorthomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c>2012-01-04 10:58:00 +0000
committerthomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c>2012-01-04 10:58:00 +0000
commitd848fc18e7c5e9843b1bd13b65cfc4ac787d72f6 (patch)
treeadaa63587c6753b4d94eeed8135e61f4ead2befe /roundcubemail/program/include/rcube_ldap.php
parent9774babe5513a06694bb9b6123dc32513550b42e (diff)
Improve support for multiple composite address fields in LDAP directories
git-svn-id: https://svn.roundcube.net/trunk@5704 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'roundcubemail/program/include/rcube_ldap.php')
-rw-r--r--roundcubemail/program/include/rcube_ldap.php5
1 files changed, 3 insertions, 2 deletions
diff --git a/roundcubemail/program/include/rcube_ldap.php b/roundcubemail/program/include/rcube_ldap.php
index 5c0bd00a5..c11bbb5e2 100644
--- a/roundcubemail/program/include/rcube_ldap.php
+++ b/roundcubemail/program/include/rcube_ldap.php
@@ -1320,12 +1320,13 @@ class rcube_ldap extends rcube_addressbook
if (!($value = $rec[$lf][$i]))
continue;
+ list($col, $subtype) = explode(':', $rf);
$out['_raw_attrib'][$lf][$i] = $value;
if ($rf == 'email' && $this->mail_domain && !strpos($value, '@'))
$out[$rf][] = sprintf('%s@%s', $value, $this->mail_domain);
- else if (in_array($rf, array('street','zipcode','locality','country','region')))
- $out['address'][$i][$rf] = $value;
+ else if (in_array($col, array('street','zipcode','locality','country','region')))
+ $out['address'.($subtype?':':'').$subtype][$i][$col] = $value;
else if ($rec[$lf]['count'] > 1)
$out[$rf][] = $value;
else