summaryrefslogtreecommitdiff
path: root/program/include/rcube_ldap.php
diff options
context:
space:
mode:
authorThomas Bruederli <thomas@roundcube.net>2012-09-09 20:23:56 +0200
committerThomas Bruederli <thomas@roundcube.net>2012-09-09 20:23:56 +0200
commit99d9f50a0000447d0a752e6c43716237dc0da176 (patch)
tree0b958b9711d09c4da74f076e1b902ffa32a4a0a1 /program/include/rcube_ldap.php
parenta1303514933afe2d867067e4b95412c79652c89b (diff)
parent4e383e2ec8b4184c0fe74d02cf30fd3a4078128e (diff)
Merge branch 'master' of github.com:roundcube/roundcubemail
Diffstat (limited to 'program/include/rcube_ldap.php')
-rw-r--r--program/include/rcube_ldap.php17
1 files changed, 11 insertions, 6 deletions
diff --git a/program/include/rcube_ldap.php b/program/include/rcube_ldap.php
index 3a7fc1805..ad2ccddeb 100644
--- a/program/include/rcube_ldap.php
+++ b/program/include/rcube_ldap.php
@@ -139,6 +139,11 @@ class rcube_ldap extends rcube_addressbook
unset($this->coltypes[$childcol]); // remove address child col from global coltypes list
}
}
+
+ // at least one address type must be specified
+ if (empty($this->coltypes['address']['subtypes'])) {
+ $this->coltypes['address']['subtypes'] = array('home');
+ }
}
else if ($this->coltypes['address']) {
$this->coltypes['address'] += array('type' => 'textarea', 'childs' => null, 'size' => 40);
@@ -767,9 +772,9 @@ class rcube_ldap extends rcube_addressbook
}
// use VLV pseudo-search for autocompletion
- $rcmail = rcmail::get_instance();
+ $rcube = rcube::get_instance();
- if ($this->prop['vlv_search'] && $this->conn && join(',', (array)$fields) == join(',', $rcmail->config->get('contactlist_fields')))
+ if ($this->prop['vlv_search'] && $this->conn && join(',', (array)$fields) == join(',', $rcube->config->get('contactlist_fields')))
{
// add general filter to query
if (!empty($this->prop['filter']) && empty($this->filter))
@@ -2027,12 +2032,12 @@ class rcube_ldap extends rcube_addressbook
# a0 = type context-specific/constructed with a length of 06 (6) bytes following
# 02 = type integer with 2 bytes following (offset): 01 01 (ie 1)
# 02 = type integer with 2 bytes following (contentCount): 01 00
-
+
# whith a search string present:
# 81 = type context-specific/constructed with a length of 04 (4) bytes following (the length will change here)
# 81 indicates a user string is present where as a a0 indicates just a offset search
# 81 = type context-specific/constructed with a length of 06 (6) bytes following
-
+
# the following info was taken from the ISO/IEC 8825-1:2003 x.690 standard re: the
# encoding of integer values (note: these values are in
# two-complement form so since offset will never be negative bit 8 of the
@@ -2042,7 +2047,7 @@ class rcube_ldap extends rcube_addressbook
# of the second (to the left of first octet) octet:
# a) shall not all be ones; and
# b) shall not all be zero
-
+
if ($search)
{
$search = preg_replace('/[^-[:alpha:] ,.()0-9]+/', '', $search);
@@ -2062,7 +2067,7 @@ class rcube_ldap extends rcube_addressbook
// now compute length over $str
$str = self::_ber_addseq($str, 'a0');
}
-
+
// now tack on records per page
$str = "020100" . self::_ber_addseq(self::_ber_encode_int($rpp-1), '02') . $str;