Aleksander Machniak
2012-10-16 639a825b2ebdb16fe6e9725bde00f7baa31ae434
Fix post-filtering vlv results, fixes warning "mb_strtolower() expects parameter 1 to be a string, array given"

Conflicts:

program/include/rcube_ldap.php
1 files modified
36 ■■■■ changed files
program/include/rcube_ldap.php 36 ●●●● patch | view | raw | blame | history
program/include/rcube_ldap.php
@@ -772,24 +772,26 @@
            for ($i = 0; $i < $entries['count']; $i++) {
                $rec = $this->_ldap2result($entries[$i]);
                foreach (array('email', 'name') as $f) {
                    $val = mb_strtolower($rec[$f]);
                    switch ($mode) {
                    case 1:
                        $got = ($val == $search);
                        break;
                    case 2:
                        $got = ($search == substr($val, 0, strlen($search)));
                        break;
                    default:
                        $got = (strpos($val, $search) !== false);
                        break;
                    }
                foreach ($fields as $f) {
                    foreach ((array)$rec[$f] as $val) {
                        $val = mb_strtolower($val);
                        switch ($mode) {
                        case 1:
                            $got = ($val == $search);
                            break;
                        case 2:
                            $got = ($search == substr($val, 0, strlen($search)));
                            break;
                        default:
                            $got = (strpos($val, $search) !== false);
                            break;
                        }
                    if ($got) {
                        $this->result->add($rec);
                        $this->result->count++;
                        break;
                        if ($got) {
                            $this->result->add($rec);
                            $this->result->count++;
                            break 2;
                        }
                    }
                }
            }