From ecfaed571b2c38f4bcc2b6a0fa39fba15a5126ce Mon Sep 17 00:00:00 2001 From: alecpl Date: Fri, 11 Nov 2011 15:04:45 +0000 Subject: - Apply fixes fom trunk up to r5414 --- program/include/rcube_addressbook.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'program/include/rcube_addressbook.php') diff --git a/program/include/rcube_addressbook.php b/program/include/rcube_addressbook.php index 7270f42fd..5f17f4a8a 100644 --- a/program/include/rcube_addressbook.php +++ b/program/include/rcube_addressbook.php @@ -96,12 +96,16 @@ abstract class rcube_addressbook * * @param array List of fields to search in * @param string Search value + * @param int Matching mode: + * 0 - partial (*abc*), + * 1 - strict (=), + * 2 - prefix (abc*) * @param boolean True if results are requested, False if count only * @param boolean True to skip the count query (select only) * @param array List of fields that cannot be empty * @return object rcube_result_set List of contact records and 'count' value */ - abstract function search($fields, $value, $strict=false, $select=true, $nocount=false, $required=array()); + abstract function search($fields, $value, $mode=0, $select=true, $nocount=false, $required=array()); /** * Count number of available contacts in database @@ -399,7 +403,7 @@ abstract class rcube_addressbook { $out = array(); foreach ($data as $c => $values) { - if (strpos($c, $col) === 0) { + if ($c === $col || strpos($c, $col.':') === 0) { if ($flat) { $out = array_merge($out, (array)$values); } -- cgit v1.2.3