From ad8c9db557d367a8369381384d6cd8e52ccfe4de Mon Sep 17 00:00:00 2001 From: thomascube Date: Wed, 4 Jan 2012 10:58:00 +0000 Subject: Improve support for multiple composite address fields in LDAP directories --- program/include/rcube_ldap.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'program/include/rcube_ldap.php') diff --git a/program/include/rcube_ldap.php b/program/include/rcube_ldap.php index 5c0bd00a5..c11bbb5e2 100644 --- a/program/include/rcube_ldap.php +++ b/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 -- cgit v1.2.3