Differences From Artifact [b927c6f948]:

To Artifact [19f3bdb872]:


329
330
331
332
333
334
335







336
337
338
339
340
341
342
343
        elseif (!$champs->isText($field))
        {
            $where = sprintf('WHERE %s = %s', $field, $db->quote($query));
            $order = $field;
        }
        else
        {







            $where = sprintf('WHERE transliterate_to_ascii(%s) LIKE %s', $field, $db->quote('%' . Utils::transliterateToAscii($query) . '%'));
            $order = sprintf('transliterate_to_ascii(%s) COLLATE NOCASE', $field);
        }

        $fields = array_keys((array)$champs->getListedFields());

        if (!in_array($field, $fields))
        {







>
>
>
>
>
>
>
|







329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
        elseif (!$champs->isText($field))
        {
            $where = sprintf('WHERE %s = %s', $field, $db->quote($query));
            $order = $field;
        }
        else
        {
            // Si le champ est de type 'select' (sélecteur à choix unique), ne pas utiliser de LIKE mais valeur exacte
            // @link https://fossil.kd2.org/garradin/info/587f730b661a7ce16bad215d4bd02195e754ec57
            if ($champ->type != 'select')
            {
                $query = '%' . $query . '%';
            }

            $where = sprintf('WHERE transliterate_to_ascii(%s) LIKE %s', $field, $db->quote(Utils::transliterateToAscii($query)));
            $order = sprintf('transliterate_to_ascii(%s) COLLATE NOCASE', $field);
        }

        $fields = array_keys((array)$champs->getListedFields());

        if (!in_array($field, $fields))
        {