/[webpac]/trunk2/eurovoc/abecedno.html
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Contents of /trunk2/eurovoc/abecedno.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 548 - (show annotations)
Tue Oct 26 20:30:39 2004 UTC (19 years, 5 months ago) by dpavlin
File MIME type: text/html
File size: 9905 byte(s)
compile regexps just once, new function text_ent which can createTextNode
with html entities (using ugly innerHTML hack, but hack, it works!)

1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2 <html>
3 <head>
4 <title>HIDRA - Pojmovnik Eurovoc</title>
5 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2"/>
6 <link rel="stylesheet" href="eurovoc.css" type="text/css">
7
8 <script type="text/javascript" src="js/bfilter.js"></script>
9 <script type="text/javascript" src="js/popup.js"></script>
10 <script type="text/javascript" src="js/load_js.js"></script>
11 <script type="text/javascript" src="js/cookies.js"></script>
12 <script type="text/javascript" src="js/l2_unescape.js"></script>
13 <script type="text/javascript" src="js/unac.js"></script>
14 <script type="text/javascript">
15 // <!--
16
17 var lang2thes = {
18 'hr' : 'DescriptorHR.js',
19 'en' : 'DescriptorEN.js',
20 'fr' : 'DescriptorFR.js',
21 'ge' : 'DescriptorGE.js'
22 };
23
24 var lang = get_cookie('w2_lang');
25
26 var headlines = null;
27 self.document.myfilter = null;
28
29 function myfilter() {
30 // self.document.getElementById('textfilter').focus();
31 // self.document.getElementById('textfilter').caretPos=1;
32 // self.document.getElementById('textfilter').select();
33 self.document.myfilter = new BFilter(headlines);
34
35 // define some regexps
36 self.document.myfilter.star_regex = new RegExp(/ *\* */);
37 self.document.myfilter.htmlent_regex = new RegExp(/(&[a-z][a-z]*;)/i);
38
39 self.document.myfilter.text_ent = function (str) {
40 if (str.match(this.htmlent_regex)) {
41 var e = self.document.createElement("span");
42 e.innerHTML = str;
43 return e;
44 } else {
45 return self.document.createTextNode(str);
46 }
47 }
48
49 self.document.myfilter.result = function (arr) {
50 var r_div = element_id('results');
51 if (r_div) {
52 var li = self.document.createElement("li");
53 var e = self.document.createElement("a");
54 var pic = null;
55
56 e.setAttribute("href","hijerarhija.html?o="+arr[1]+"#mfn"+arr[1]);
57 if (arr[0].match(this.star_regex)) {
58 e.appendChild(this.text_ent(arr[2].replace(this.star_regex,' ')));
59 pic = self.document.createElement("img");
60 pic.src = 'img/crovoc.png';
61 pic.border = 0;
62 e.appendChild(pic);
63 } else {
64 e.appendChild(this.text_ent(arr[2]));
65 }
66 li.appendChild(e);
67
68 li.appendChild(self.document.createTextNode(" "));
69
70 e = self.document.createElement("a");
71 e.setAttribute("href","thes/"+arr[1]+".html");
72 e.setAttribute("target","popup");
73 e.onclick = function() { return popup(e) };
74 pic = self.document.createElement("img");
75 pic.src = 'img/listic.png';
76 pic.border = 0;
77 e.appendChild(pic);
78 li.appendChild(e);
79
80 li.appendChild(self.document.createElement("br"));
81
82 // append li
83 r_div.appendChild(li);
84
85 } else {
86 alert("can't find results div!");
87 }
88 /*
89 return '<li><a href="thes/'+arr[1]+'.html">'+arr[0]+'</a>'+
90 '&nbsp;<a href="browse.html?o='+arr[1]+'">&curren;</a>' +
91 '</li>';
92 */
93 return null;
94 }
95
96 // this function is called when updating innerHTML with results
97 self.document.myfilter.display = function (html) {
98 return null;
99 // return '<ul>'+html+'</ul>';
100 }
101
102 self.document.myfilter.show_status = function (status) {
103 var html;
104 if (this.hits > 0) {
105 html = "Pronaðeno "+this.hits+" zapisa";
106 } else {
107 html = "Nije pronaðen niti jedan zapis";
108 }
109 if (! status) {
110 html = "Unesite "+this.min_len+" znaka za pretra¾ivanje.";
111 status = "";
112 } else {
113 status = " za <em>"+status+"</em>.";
114 }
115
116 var el = this.element_id("status");
117 el.innerHTML = html+status+"\n";
118 }
119 }
120
121 function load_lang(lang) {
122 // reset results
123 if (self.document.myfilter) element_id('results').innerHTML = "";
124
125 // default language or fallback from all to hr
126 if (! lang || lang == 'all') lang = 'hr';
127
128 if (! lang2thes[lang]) {
129 alert("Jezik "+lang+" nije podr¾an");
130 }
131
132 set_cookie('w2_lang', lang);
133 element_id('lang').disabled = true;
134 element_id('textfilter').disabled = true;
135 element_id('status').innerHTML = "Uèitavanje podataka za jezik. Molimo, prièekate...";
136
137 self.document.myfilter = null;
138
139 load_js(lang2thes[lang], 'headlines', 'load_lang_finished();' );
140 }
141
142 function do_filter(filter) {
143 element_id('status').innerHTML = "Pretra¾ivanje u tijeku...";
144 var f = l2_unescape(filter);
145 f = f.substr(0,2) + unac(f.substr(2,f.length-2));
146 if (self.document.myfilter) self.document.myfilter.filter(f);
147 }
148
149 function load_lang_finished() {
150 //alert("loaded "+lang);
151 myfilter();
152 self.document.myfilter.arr=headlines;
153 element_id('lang').disabled = false;
154 element_id('textfilter').disabled = false;
155 do_filter(element_id('textfilter').value);
156 return false;
157 }
158
159 function select_option(value,text,selected) {
160 document.write('<option value="'+value+'"');
161 if (value == selected) document.write(' selected');
162 document.write('>'+text+'</option>');
163 }
164 // -->
165 </script>
166 <script type="text/javascript" src="js/hide.js"></script>
167 </head>
168
169 <body onload="load_lang(lang);">
170 <table width="100%" border="0" cellspacing="0" cellpadding="0">
171 <tr>
172 <td colspan="3" class="hdr" height="10">
173 </td>
174 </tr>
175 <tr>
176 <td class="logoHidra">
177 <img src="img/euzajed.png" border="0" alt="Europske zajednice">
178 </td>
179 <td class="logoHidra">
180 <img src="img/hidra.png" border="0" alt="HIDRA logo">
181 </td>
182 <td class="logoEUV">
183 <a href="index.html"><img src="img/eurovoc2.png" border="0" alt="Eurovoc"></a>
184 </td>
185 </tr>
186 <tr>
187 <td class="hdr2" height="10" colspan="3">
188 </td>
189
190 </tr>
191 </table>
192
193
194 <table border="0" cellspacing="0" cellpadding="0" width="100%">
195 <tr>
196 <td class="hMenuL hMenu">
197 <table width="160" cellspacing="0" cellpadding="0">
198 <tr><td>
199 <table border="0" cellspacing="0" cellpadding="0">
200 <tr>
201 <td class="topLpl"></td>
202 <td rowspan="2" class="hMenuTxt"><a class="lhM" href="eurovoc.html">Pojmovnik Eurovoc</a></td>
203 <td nowrap class="topRpl"></td>
204 </tr>
205 <tr>
206 <td class="hMenuSide"></td>
207 <td class="hMenuSide"></td>
208 </tr>
209 <tr>
210 <td colspan="3" height="10"></td>
211 </tr>
212 </table>
213 </td></tr>
214 </table>
215 </td>
216
217 <td colspan="2" class="hMenu">
218 <table border="0" cellspacing="0" cellpadding="0" align="right" width="520">
219 <tr>
220 <td width="10">&nbsp;</td>
221 <td>
222 <table border="0" cellspacing="0" cellpadding="0">
223 <tr>
224 <td class="topLpl"></td>
225 <td rowspan="2" class="hMenuTxt"><a class="lhM" href="pretrazivanje.html">Pretra¾ivanje</a></td>
226 <td class="topRpl"></td>
227 </tr>
228 <tr>
229 <td class="hMenuSide"></td>
230 <td class="hMenuSide"></td>
231 </tr>
232 <tr>
233 <td colspan="3" height="10"></td>
234 </tr>
235 </table>
236 </td>
237 <td width="10">&nbsp;</td>
238 <td>
239 <table border="0" cellspacing="0" cellpadding="0">
240 <tr>
241 <td class="topLpl"></td>
242 <td rowspan="2" class="hMenuTxt"><a class="lhM" href="hijerarhija.html">Hijerarhijski prikaz</a></td>
243 <td class="topRpl"></td>
244 </tr>
245 <tr>
246 <td class="hMenuSide"></td>
247 <td class="hMenuSide"></td>
248 </tr>
249 <tr>
250 <td colspan="3" height="10"></td>
251 </tr>
252 </table>
253 </td>
254 <td width="10">&nbsp;</td>
255 <td>
256 <table border="0" cellspacing="0" cellpadding="0">
257 <tr>
258 <td class="topLpl"></td>
259 <td rowspan="2" class="ActMenu">Abecedna kazala</td>
260 <td class="topRpl"></td>
261 </tr>
262 <tr>
263 <td class="hMenuSide"></td>
264 <td class="hMenuSide"></td>
265 </tr>
266 <tr>
267 <td class="bottomLpl"></td>
268 <td class="bkgPl"></td>
269 <td class="bottomRpl"></td>
270 </tr>
271 </table>
272 </td>
273 <td width="10">&nbsp;</td>
274 </tr>
275 </table>
276
277 </td>
278 </tr>
279
280 <tr>
281 <td width="200" class="menu">
282 <table border="0" cellspacing="0" cellpadding="0" width="160">
283 <tr>
284 <td colspan="3">&nbsp;</td>
285 </tr>
286 <tr>
287 <td class="topLsv"></td>
288 <td class="middle bkgSv"></td>
289 <td class="topRsv"></td>
290 </tr>
291 <tr>
292 <td colspan="3" class="menuItem2">Upute za prikaz abecednih kazala</td>
293 </tr>
294 <tr>
295 <td colspan="3" class="menuItem">
296 Upi¹ite najmanje <em>dva poèetna slova</em> tra¾enog
297 pojma.
298 </td>
299 </tr>
300 <tr>
301 <td colspan="3" class="menuItem">
302 Klik na pojam u abecednom kazalu pozicionira pojam u
303 hijerarhijkoij strukturi pojmovnika.
304 </td>
305 </tr>
306 <tr>
307 <td colspan="3" class="menuItem">
308 Klik na znak <img src="img/listic.png" border="0"> otvara novi prozor u kojem
309 se pojavljuje detaljan prikaz tra¾enog pojma.
310 </td>
311 </tr>
312 <tr>
313 <td class="bottomLsv"></td>
314 <td class="middle bkgSv"></td>
315 <td class="bottomRsv"></td>
316 </tr>
317 </table>
318
319 </td>
320
321
322 <td class="bd">
323
324 <h3>Abecedna kazala</h3>
325
326
327 <div style="float: right; width: 10em; text-align: center; margin: 0.5m">
328 <a href="#" onclick="toggle_display('debug');">debug</a>
329 <div style="text-align: left; border: 1px dashed #c0c0c0; display: none;" id="debug">
330 </div>
331 </div>
332
333 <form method="get" onsubmit="return false;" action="?">
334 <div class="filters">
335 <script type="text/javascript">
336 // <!--
337 document.write('<select id="lang" name="lang" onchange="load_lang(this.options[this.selectedIndex].value);">');
338 select_option("hr","Hrvatski",lang);
339 select_option("en","Engleski",lang);
340 select_option("fr","Francuski",lang);
341 select_option("ge","Njemaèki",lang);
342 document.write('</select>');
343 // -->
344 </script>
345
346 <input autocomplete="off" class="filters" id="textfilter" title="enter a regular expression to filter by" onkeyup="do_filter(this.value);" />
347 <!-- this button is strictly for looks -->
348 <input class="filters" value="filter" type="button" disabled="true"/>
349 </div>
350 </form>
351
352 <div id="status" style="font-size: 80%; color: gray;">
353 <!--
354 Enter few letters to filter by them
355 -->
356 </div>
357
358 <ul id="results">
359 </ul>
360
361 </td>
362 </tr>
363 </table>
364
365 </body>
366 </html>

  ViewVC Help
Powered by ViewVC 1.1.26