Naposledy změněno Martin Mahr 2024/10/21 22:15

Show last authors
1 Katalog Tritia umožňuje přijímat požadavky na vyhledávání i z externího vyhledávací formuláře umístěného např. na stránkách knihovny. Pro implementaci vyhledávacího formuláře katalog nabízí dvě možnosti, kde každá má svoje výhody a nevýhody, které jsou popsané níže. Zvažte prosím pečlivě, která varianta je pro vás vhodnější.
2
3 = HTML formulář =
4
5 Nejjednodušší způsob, jak implementovat externí formulář pro vyhledávání v katalogu Tritia je sestrojení jednoduchého HTML formuláře. Katalog totiž přijímá vyhledávací frázi na URL adrese:
6
7 [[https:~~/~~/merkur.tritius.cz/search?q=neff>>url:https://merkur.tritius.cz/search?q=neff]]
8
9
10 Formulář, který zajistí takovéto volání katalogu vypadá následovně:
11
12 |
13
14 {{{<form method="get" action="https://merkur.tritius.cz/search">
15 <input type="text" name="q" />
16  
17 <button type="submit">Vyhledej</button>
18 </form>}}}
19
20 Jak je vidět, tak sestavení formuláře a jeho zapracování do stránek knihovny je velice jednoduché. Formulář umožňuje velice jednoduše provolat jednoduché vyhledávání katalogu. Nevýhodou je, že tímto způsobem lze provolávat pouze jednoduché hledání bez dalších nastavení (omezení vyhledávného pole, řazení apod.). Tyto další možnosti jsou totiž vázané na nastavení Tritia a na systémová ID jednotlivých prvků vyhledávání. Např. prohledávané oblasti nebo ID vyhledávaných polí.
21
22 | Pokud jste zběhlí v HTML a webových technologiích, jistě vás napadlo, že ID např. prohledávaných oblastí lze opsat z Tritia a do formuláře doplnit. Ano lze to, ale my to nedoporučujeme. Při jakékoli změně nastavení v Tritiu je pravděpodobné, že se takový formulář rozbije. Navíc existuje riziko, že z nějakých důvodů změníme pojmenování identifikátorů nebo se rozhodneme místo ID pracovat s nějakými názvy a formulář také přestane fungovat po nasazení nové verze Tritia.
23
24 = JS formulář =
25
26 Podobně jako [[Katalog - Externí přihlašovací formulář>>doc:uzivatelsky-manual.Pro-spravce.Katalog-Externi-prihlasovaci-formular.WebHome]] existuje i pro vyhledávací formulář jeho JS varianta.
27
28 |
29
30 {{{<!-- Základní kostra formuláře -->
31 <form id="tritius-search-form" data-tritius-url="https://tritius.knihovna.cz">
32 </form>
33
34 <!-- Import obslužného JS kódu -->
35 <script type="text/javascript" src="https://tritius.knihovna.cz/js/tritius.js"></script>
36
37 <!-- Inicializace Tritius pluginu -->
38 <script type="text/javascript">
39 (function(window) {
40 tritius.init();
41 })(window);
42 </script>}}}
43
44 * ID formuláře musí být "**tritius-search-form**".
45 * Atribut **data-tritius-url** obsahuje URL, na které běží katalog Tritia.
46 * Všechny pole formuláře jsou přidána automaticky (pokud nejsou přepsána viz níže)
47 * Je nutné v Tritiu nastavit doménu, na které je povolen externí přihlašovací formulář (Položky nastavení: EXTERNAL_LOGIN_FORM_ALLOWED_ORIGIN). Platí i pro externí vyhledávací formulář.
48
49 Formulář obsahuje několik polí:
50
51 |=(((
52 Název pole (name)
53 )))|=(((
54 Popis
55 )))|=(% colspan="1" %)Přepisovatelné|=(% colspan="1" %)(((
56 Hodnota
57 )))
58 |wd|Webová definice.|(% colspan="1" %)Ano|(% colspan="1" %)(((
59 ID webové definice, do které se bude čtenář přihlašovat.
60
61 Defaultně prázdná
62 )))
63 |(% colspan="1" %)q|(% colspan="1" %)Vyhledávaný výraz.|(% colspan="1" %)Ano|(% colspan="1" %)Zadává uživatel.
64 |(% colspan="1" %)area|(% colspan="1" %)Prohledávaná oblast.|(% colspan="1" %)Ne|(% colspan="1" %)Výběr prohledávaných oblastí je sestaven automaticky z nastavení Tritia.
65 |(% colspan="1" %)field|(% colspan="1" %)Prohledávané pole.|(% colspan="1" %)Ne|(% colspan="1" %)Výběr prohledávaného pole (autor, název). Je sestaven automaticky z nastavení Tritia.
66 |(% colspan="1" %)submit|(% colspan="1" %)Odesílací tlačítko.|(% colspan="1" %)Ano|(% colspan="1" %)
67
68 = Přepisování formulářových polí =
69
70 Obslužný skript se vždy před přidáním formulářového pole podívá, zda-li pole daného jména již neexistuje. Pokud ano, pak jej nepřidá a ponechá to zapsané v HTML.
71
72
73
74 |(((
75 <!~-~- Import obslužného JS kódu ~-~->
76
77 <script type="text/javascript" src="[[https:~~/~~/tritius.knihovna.cz/js/tritius.js">>url:https://tritius.knihovna.cz/js/tritius.js]]></script>
78
79
80 <!~-~- Základní kostra formuláře ~-~->
81
82 <form id="tritius-login-form" data-tritius-url="[[https:~~/~~/tritius.knihovna.cz">>url:https://tritius.knihovna.cz/]]>
83
84 <input type="text" name="q"  placeholder="Vyhledávání..." />
85
86 </form>
87 )))
88
89 = Popisky (překlady) =
90
91 Plugin umožňuje definovat popisky pro jednotlivá pole:
92
93
94 |(((
95 <!~-~- Základní kostra formuláře ~-~->
96
97 <form id="tritius-search-form" data-tritius-url="[[https:~~/~~/tritius.knihovna.cz">>url:https://tritius.knihovna.cz/]]>
98
99 </form>
100
101
102 <!~-~- Import obslužného JS kódu ~-~->
103
104 <script type="text/javascript" src="[[https:~~/~~/tritius.knihovna.cz/js/tritius.js">>url:https://tritius.knihovna.cz/js/tritius.js]]></script>
105
106
107 <!~-~- Inicializace Tritius pluginu ~-~->
108
109 <script type="text/javascript>
110
111 (function(window) {
112
113 tritius.messages.search = 'Vyhledat';
114
115 tritius.messages.to_search = 'Vyhledat...';
116
117 tritius.init();
118
119 })(window);
120
121 </script>
122 )))