čtvrtek 14. srpna 2014

Component Creator - bug #1: vyhledávání

Vygenerovaná komponenta po nainstalování do CMS Joomla 3.x.x neobsahovala funkční vyhledávání. Po zadání řetězce do vyhledávacího pole v administrativním rozhraní se nic nestalo a tabulka zůstala v nezměnněné podobě.

Toto je možné velice snadno opravit. Ve administrátorské složce komponenty ve složce models chybí řádek

$query->where('( a.name LIKE '.$search.' )');

Tento přidejte do funkce getListQuery(), která se nachází ve třídě NazevKomponentyModelPohled (tedy například DiskuzeModelPrispevky)

Původní zdrojový kód:
        // Filter by search in title
        $search = $this->getState('filter.search');
        if (!empty($search)) {
            if (stripos($search, 'id:') === 0) {
                $query->where('a.id = ' . (int) substr($search, 3));
            } else {
                $search = $db->Quote('%' . $db->escape($search, true) . '%');
               
            }
        }


Opravený zdrojový kód:
        // Filter by search in title
        $search = $this->getState('filter.search');
        if (!empty($search)) {
            if (stripos($search, 'id:') === 0) {
                $query->where('a.id = ' . (int) substr($search, 3));
            } else {
                $search = $db->Quote('%' . $db->escape($search, true) . '%');
                $query->where('( a.name LIKE '.$search.' )');
            }
        }

Žádné komentáře:

Okomentovat