summaryrefslogtreecommitdiff
path: root/roundcubemail/program/include
diff options
context:
space:
mode:
authorthomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c>2008-02-28 20:01:57 +0000
committerthomasb <thomasb@208e9e7b-5314-0410-a742-e7e81cd9613c>2008-02-28 20:01:57 +0000
commit7c0dcca9d594d4224dc00bd125c2d76615fb170e (patch)
treebaa1058096114dd04c7bb32aa40358fc04e2cc60 /roundcubemail/program/include
parent134b2b366972786f7bf8f34ff60e20525b74c117 (diff)
Applied patch by Emanuele Rocca to make LDAP filters work with or without brackets
git-svn-id: https://svn.roundcube.net/trunk@1152 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'roundcubemail/program/include')
-rw-r--r--roundcubemail/program/include/rcube_ldap.inc5
1 files changed, 4 insertions, 1 deletions
diff --git a/roundcubemail/program/include/rcube_ldap.inc b/roundcubemail/program/include/rcube_ldap.inc
index 608365269..29e7faa6b 100644
--- a/roundcubemail/program/include/rcube_ldap.inc
+++ b/roundcubemail/program/include/rcube_ldap.inc
@@ -285,9 +285,12 @@ class rcube_ldap
}
$filter .= ')';
+ // avoid double-wildcard if $value is empty
+ $filter = preg_replace('/\*+/', '*', $filter);
+
// add general filter to query
if (!empty($this->prop['filter']))
- $filter = '(&('.$this->prop['filter'] .')' . $filter . ')';
+ $filter = '(&(' . preg_replace('/^\(|\)$/', '', $this->prop['filter']) . ')' . $filter . ')';
// set filter string and execute search
$this->set_search_set($filter);