Global Search Engine (GSE) este un motor de cautare globala, in aplicatie, care foloseste fisiere de “index” in care cauta, si care reflecta informatiile relevante pentru cautare, pentru fiecare din tipurile de item-uri cautate.
Aceste fisiere de index sunt localizate in :
- pentru facturi : storage/company_xxx/searchCache/invoice/yyy.txt , unde yyy este ID-ul din tabela invoice
- pentru incasari/plati : storage/company_xxx/searchCache/payment/yyy.txt , unde yyy este ID-ul din tabela payment
- pentru parteneri : storage/company_xxx/searchCache/partner/yyy.txt , unde yyy este ID-ul din tabela partner
Directoarele acestea se creeaza automat la indexare.
Pentru ca un tip de item-uri sa apara la cautare, trebuie ca modelul respectiv sa intruneasca cateva conditii:
- sa contina functia getIndexingText() care returneaza campurile cautabile (ie cele ce vor fi indexate ca string encodat cu USearch::encodeFlatArray()
- sa contina functia getIndexingData() care intoarce numele si descrierea obiectelor ca array de [‘caption’ => ‘…’ , ‘description’ => ‘…’]
- sa contina functia statica (!) getIndexingImageData() care intoarce numele si link-ul obiectelor (vizibile la rezultatele cautarii) ca array de [‘caption’ => ‘…’ , ‘url’ => ‘…’]
In plus, modelul trebuie sa existe in USearch->$whereToSearch.
Status:
Modele deja indexabile : invoice, payment, partner, messaging.
Note:
- as of 27.11.2017, cautarea globala este implementata doar pe branch-ul cat-search-global.
- as of 28.11.2017, cautarea este in toate branch-urile, dar ascunsa: in main.php avem : <li class=”hidden-float hide“> @351 pentru #site-navbar-search
To be done:
- generarea automata a indexarii la save pe toate obiectele cautabile (invoice, payment, partner, etc) si implementarea acestei functii in USearch
- stergerea automata a indexarii la save pe toate obiectele cautabile (invoice, payment, partner, etc) si implementarea acestei functii in USearch
- √ scoaterea generarii integrale a indexarii la cautare (acum este asa ca sa putem testa usor)
- √ existenta unui link de “re-index” in sectiunile aferente obiectelor in cauza.
Categories: CORES (php core codebase), DOCUMENTATIE TEHNICA, HINTS (tehnice), Special content, Tutoriale / Reguli / Best practices |
Leave a Reply
[TOP]