Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor vyhladavania #1072

Closed
radoslavzeman opened this issue Sep 12, 2023 · 1 comment · Fixed by #1150
Closed

Refactor vyhladavania #1072

radoslavzeman opened this issue Sep 12, 2023 · 1 comment · Fixed by #1150

Comments

@radoslavzeman
Copy link
Contributor

Chceme pridat INBA clanky do:

  • vyhladavania na homepage
  • vseobecneho vyhladavania (cez lupu)
    • pouzit rovnaky vizual ako maju "Clanky", resp akekolvek najjednoduchsie riesenie, kedze celu stranky vyhladavania caka refactoring.
@radoslavzeman radoslavzeman changed the title INBA vyhldavanie INBA vyhladavanie Sep 12, 2023
@radoslavzeman radoslavzeman changed the title INBA vyhladavanie Refactor vyhladavania Nov 29, 2023
@Ty-ci Ty-ci self-assigned this Dec 4, 2023
@Ty-ci Ty-ci linked a pull request Dec 18, 2023 that will close this issue
@Ty-ci
Copy link
Contributor

Ty-ci commented Dec 19, 2023

This is a copy of original specification mentioned in #1093

Cielom je vytvorit jednotne miesto, kde sa da vyhladavat a filtrovat "vsetok obsah naraz".
K tomu mame na domovskej stranke hned v uvode hlavne vyhladavacie policko, ktore uzivatela bud vezme na stranku vyhladavania, alebo po kliknuti na vysledok ho vezme rovno na detailnu stranku daneho zaznamu.

Ak nie je mozne vsetko skombinovat na jednu stranku, cielom je si urcit co sa ma dat vyhladat z domovskej stranky, co na stranke vyhladavania, a co na samostatnych strankach a ako to cele odkomunikovat uzivatelom.

Mame viacero typov obsahu, ktore na webe zobrazujeme.
Ziju na roznych miestach (niektore na samostatnych podstrankach) a vyhladava sa v nich rozne a aj mame rozne naroky, ako v nich chceme vediet vyhladavat (rozsirene vyhladavanie a filtrovanie) a treba vymysliet, kde a ako takyto filter zobrazit. Nizsie spisujem jednotlive typy obsahu a ich specifikacie.

Slovom "mudre" budem oznacovat tzv, "fuzzy" search, teda ignorovanie diakritiky, tolerancia k preklepom a pod.

V typoch obsahu so Strapi vieme vyhladavat vo vsetkych naraz, ich vieme vysledky kombinovat automaticky. Ostatne typy obsahu sziju na inych miestach a requesty na ne robime samostatne. Akekolvek miesanie s inymi vysledkami by sme museli riesit manualne a mat poriadne definovane.

Typy obsahu

Hlavne typy obsahu v Strapi (= Meilisearch)

Hlavne casti obsahu ziju v Strapi a vyhladavame v nich pomocou Meilisearchu. Toto vyhladavanie je dost rychle a velmi mudre. Vieme pomocou neho vyhladavat, filtrovat, zoradovat, na zaklade akehokolvek atributu. Atributy si treba definovat, nie je to "automaticky vo vsetkom", no vieme ich pridavat/odoberat akokolvek. Mame nad tym plnu kontrolu.

Samotne vyhladavanie (teda podla textu) tu funguje nad vsetkymi udajmi akoby naraz. Teda aj v nazve, aj v podnadpise, aj v popise (atd.) sa vyhlada naraz jednym requestom.

V Strapi rozlisujeme tieto typy obsahu:

Stranky

Maju svoj nadpis, perex, klucove slova (SEO), farbu (hlavnu kategoriu).

Clanky (Aktuality)

Maju nadpis, perex, datum publikovania, farbu a tag (tagy patria pod kategorie), ilustracny obrazok

inba clanky

Podobne ako Clanky, maju vsak svoje tagy (vsetky cervene), clanky patria pod jendotlive Vydania. Vsetky clanky su publikovane naraz pod datumom Vydania.
Ziju tu: https://bratislava.sk/inba
Zatial tam takmer ziadne nie su, od novembra budu.

inba vydania

Maju datum publikovania, prednu a zadnu obalku, perex (zoznam tem?)
Ziju tu: https://bratislava.sk/inba/archiv
Toto neviem ci uplne treba davat do vyhladavania.

VZNka - Vseobecne zavazne nariadenia

Aktualne ziju na tejto horibilne dlhej urlke: https://bratislava.sk/mesto-bratislava/sprava-mesta/legislativa-mesta/vseobecne-zavazne-nariadenia

VZNka nie su aktualne idealne spravene ani v Strapi ano na FE. Popisem sem idealne buduci stav.

Kazde VZNko je v Strapi ako samostatny zaznam.
Kazde ma svoje cislo (napr VZN 9/2023) a cely nazov (napr "VZN 9/2023 o určení výšky príspevku na čiastočnú úhradu výdavkov na štúdium v ZUŠ a na čiastočnú úhradu nákladov spojených s činnosťou CVČ")
VNZko ma vzdy datum publikovania (zverejnenia), a datum "platnosti od" (datum ucinnosti).
Ma aj datum "platnosti do", ak k nemu existuje zrusujuce VZNko.
Ma aj svoju kategoriu.

VZNka sa mozu na seba vztahovat ako:

  • dodatok
  • zrusujuce VZNko
  • konsolidovane znenie = vysledne znenie po zapracovani vsetkych dodatkov

Kazde VZNko moze mat navyse este nejake doplnujuce prilohy, ako napr Redakcne oznamenie, alebo skratene znenie (nieco ako konsolidovane znenie, ale nie je to samostatne VZNko).

Priklad celkom dlho zijuceho VZNka je uzemny plan: https://bratislava.sk/sk/mesto-bratislava/sprava-mesta/legislativa-mesta/vseobecne-zavazne-nariadenia?keyword=14/2021

Kazde VZNko ma samostatnu stranku na ktorej si ho viem otvorit (aktualne nema, ma iba modal). Na tejto stranke vidim vsetky ostatne VZNka ktore su s tymto v nejakom vztahu + prilohy, a teda - hlavne VZNko, konsolidovane znenie, skratene znenie, doplnujuce VZNka (dodatky), VZNka doplnene tymto VZNkom, zrusujuce VZNka, VZNka zrusene tymto VZNkom.

Tieto vztahy su dolezite pre lepsie pochopenie ako VZNka funguju a aby sme vedeli zobrazit relevantne vysledky.

Textovo chceme vyhladavat podla nazvu a cisla, ale aj v "suvisiacich" VZNkach (doplnky, zrusujuce...)
Filtrovat chceme podla platnosti (ucinnosti), podla datumu zverejnenia, podla kategorie, aktualne platne?

Zo starej figmy vytahujem navrh filtrov:

Image

Typy obsahu z externych sluzieb

Uradna tabula

Uradna tabula sa zobrazuje na domovskej stranke v Novinkach na samostatnom tabe (3 posledne zaznamy) a na samostatnej stranke https://bratislava.sk/mesto-bratislava/transparentne-mesto/uradna-tabula

Jednotlive zaznamy v uradnej tabuli dotahujeme z Ginisu. Vyhladavanie v Ginise nie je velmi rychle, ale je aspon ako tak mudre.
Kazdy zaznam obsahuje zakladne udaje ako Nazov, Kategoriu, Popis, Datum vyvesenia, Datum stiahnutia, Zdroj (kto to vyvesil), Znacka (toto musim overit co presne je)
A tiez ci sa nadza v archive alebo v aktualnych zaznamoch - toto este musim preskumat.

Textovo chceme vyhladavat v Nazve a v Popise (a v Znacke). Pravdepodobne to vsak treba spravit ako samostatne requesty a ak ich ceheme nejak zobrazovat v jednom zozname, musiem to nejak mergnut my manualne.
Filtrovat (a zoradovat?) chceme podla kategorie, zdroja, datumu zverejnenia, datumu staihnutia, archiv ano/nie.

Zo starej figmy vytahujem:

Image

Z internej Uradnej tabule to vyzera takto:

Image

Organizacna struktura

Organizacnu strukturu dotahujeme z Azure Active Directory (AD). Vyhladavanie v nom je priemerne rychle, no nie je vobec mudre.

Cela organizacna struktura sa zobrazuje v akordeonoch aktualne na samostatnej stranke https://bratislava.sk/mesto-bratislava/sprava-mesta/magistrat/organizacna-struktura-a-kontakty
Vzdy by k nej mala byt zo zakona aj pdf verzia na stiahnutie.
Na tejto stranke momentalne nemame ziadne vyhladavanie. To mame zakomponovane na stranke Vyhladavania.

Textovo vyhladavat chceme podla mena a priezviska, tel cisla, emailu, pozicie, oddelenia/referatu/sekcie (toto tam teraz nemame).
Filtrovat chceme podla pozicie, oddelenia/referatu/sekcie - neviem co je lepsie, ci textovo vyhladavat alebo len filtrovat podla vyberu.

Telefon a email nie su povinne, ale kontakty ktore nemaju ani jedno by sa nemali zobrazovat.

Image

Obsah mimo webu, na ktory chceme len odkazat

Podujatia

Podujatia ziju vsetky na v systeme Tootoot a na stranke BKIS a cele vyhladavanie ma prebiehat tam. Chceme sa tam viediet len odkazat: https://www.bkis.sk/podujatia/
My zobrazujeme sekciu najblizsich podujati na domovskej stranke (a chceme ju zobrazovat aj na niektorych inych strankach, napr inba).

Zverejnovanie

Zverejnovanie zmluv, fatury, objenavok a pod. zije na samostatnom portali a cele vyhladavanie ma prebiehat tam. Chceme sa tam vediet len odkazat: https://zverejnovanie.bratislava.sk/
Mozno by nebolo odveci nejake lepsie vymysleit zobrazovanie Zverejnovania na domovskej stranke.

Inspiracie z inych webov

hel.fi takto zobrazuje linky na externe vyhladavanie podujati a "rozhodnuti"

Image

Oslo pod vyhladavanim vypise zoznam linkov:
https://www.oslo.kommune.no/search-results/?q=help&searchID=toppmeny

Image

Reykjavik prerabal nedavno vyhladavanie:
https://reykjavik.is/en/search#?cludoquery=city&cludopage=1&cludoinputtype=standard

Image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants