Changeset 22:e56b79cc18a9
- Timestamp:
- 05/30/09 15:35:10 (15 years ago)
- Author:
- František Kučera <franta-hg@…>
- Branch:
- default
- Message:
-
JavaScript?: lokalizace a zjednodušení.
- Location:
- java/sql-vyuka
- Files:
-
Legend:
- Unmodified
- Added
- Removed
-
r18
|
r22
|
|
14 | 14 | vychozi.vysledek=V\u00EDtejte v programu SQL v\u00FDuka! |
15 | 15 | vychozi.napoveda=Tady bude n\u00E1pov\u011Bda |
| 16 | |
| 17 | js.nepodporovany=V\u00E1\u0161 prohl\u00ED\u017Ee\u010D nepodporuje AJAX. Po\u0159i\u010Fte si m\u00E9n\u011B zastaral\u00FD prohl\u00ED\u017Ee\u010D, nejl\u00E9pe Firefox. |
| 18 | js.probihaSQL=Prob\u00EDh\u00E1 zpracov\u00E1n\u00ED SQL p\u0159\u00EDkazu\u2026 |
| 19 | js.probihaHistorie=Na\u010D\u00EDt\u00E1 se historie\u2026 |
-
r20
|
r22
|
|
6 | 6 | <fmt:setBundle basename="cz.frantovo.sql.vyuka.preklady" scope="application"/> |
7 | 7 | |
| 8 | <!-- Logo programu --> |
8 | 9 | <div id="zahlavi"><h1><fmt:message key="nazev"/></h1></div> |
9 | 10 | |
10 | 11 | <div id="bloky"> |
| 12 | <!-- Nápověda --> |
11 | 13 | <div class ="blok" id="napoveda"> |
12 | 14 | <h2><fmt:message key="blok.napoveda"/></h2> |
… |
… |
|
15 | 17 | </div> |
16 | 18 | </div> |
17 | | |
18 | | |
19 | 19 | <div id="io"> |
20 | | |
| 20 | <!-- Zadávání SQL příkazů --> |
21 | 21 | <div class ="blok" id="vstup"> |
22 | 22 | <h2><fmt:message key="blok.zadavani"/></h2> |
… |
… |
|
28 | 28 | rows="100" |
29 | 29 | cols="1000" |
30 | | onkeypress="javascript:checkTab(event);"><fmt:message key="vychozi.sql"/></textarea> |
| 30 | onkeypress="javascript:zpracujTabulatory(event);"><fmt:message key="vychozi.sql"/></textarea> |
31 | 31 | <input id="stavovePole" |
32 | 32 | name="stavovePole" |
… |
… |
|
48 | 48 | </div> |
49 | 49 | </div> |
50 | | |
51 | | |
52 | | |
53 | | |
54 | | |
| 50 | <!-- Zobrazování výstupu --> |
55 | 51 | <div class ="blok" id="vystup"> |
56 | 52 | <h2><fmt:message key="blok.vysledek"/></h2> |
… |
… |
|
62 | 58 | </div> |
63 | 59 | </div> |
| 60 | </div> |
64 | 61 | |
65 | | </div> |
| 62 | <!-- Načteme si lokalizované texty do skrytého formuláře, aby je mohl používat JavaScript --> |
| 63 | <form action="#" name="lokalizace" id="lokalizace"> |
| 64 | <textarea name="nepodporovany"><fmt:message key="js.nepodporovany"/></textarea> |
| 65 | <textarea name="probihaSQL"><fmt:message key="js.probihaSQL"/></textarea> |
| 66 | <textarea name="probihaHistorie"><fmt:message key="js.probihaHistorie"/></textarea> |
| 67 | </form> |
66 | 68 | </jsp:root> |
-
r21
|
r22
|
|
16 | 16 | return new ActiveXObject("Microsoft.XMLHTTP"); |
17 | 17 | } else { |
18 | | alert("Váš prohlížeč nepodporuje AJAX. Pořiďte si méně zastaralý prohlížeč, nejlépe Firefox."); |
| 18 | alert(document.lokalizace.nepodporovany.value); |
19 | 19 | return null; |
20 | 20 | } |
21 | 21 | } |
22 | 22 | |
| 23 | |
23 | 24 | /** Náš AJAXový objekt. */ |
24 | 25 | var ajax = getXmlHttpRequestObject(); |
| 26 | |
25 | 27 | |
26 | 28 | /** |
… |
… |
|
32 | 34 | } |
33 | 35 | |
| 36 | |
34 | 37 | /** |
35 | 38 | * Zobrazí text na požadovaném místě. |
36 | | * @param text text k zobrazení |
37 | | * @param kde id prvku, do kterého se má text vypsat |
| 39 | * @param text text k zobrazení. V případě formulářů prostý text, v ostatních případech HTML text. |
| 40 | * @param kde id prvku, do kterého se má text vypsat. |
38 | 41 | **/ |
39 | 42 | function zobraz(text, kde) { |
… |
… |
|
47 | 50 | } |
48 | 51 | |
49 | | /** |
50 | | * Zobrazí text ve výstupním poli. |
51 | | * @param text HTML text k zobrazení |
52 | | **/ |
53 | | function zobrazVystup(text) { |
54 | | zobraz(text, vystupniPole); |
55 | | } |
56 | | |
57 | | /** |
58 | | * Zobrazí text ve vstupním poli. |
59 | | * Požijeme pro načtení SQL příkazu z historie. |
60 | | * @param text prostý text k zobrazení |
61 | | **/ |
62 | | function zobrazVstup(text) { |
63 | | zobraz(text, vstupniPole); |
64 | | } |
65 | | |
66 | | /** |
67 | | * Zobrazí text ve vstupním poli. |
68 | | * Požijeme pro načtení SQL příkazu z historie. |
69 | | * @param text prostý text k zobrazení |
70 | | **/ |
71 | | function zobrazStav(text) { |
72 | | zobraz(text, stavovePole); |
73 | | } |
74 | | |
75 | | /** |
76 | | * Zobrazí text ve poli pro nápovědu. |
77 | | * @param text text k zobrazení |
78 | | **/ |
79 | | function zobrazNapovedu(text) { |
80 | | zobraz(text, napovedniPole); |
81 | | } |
82 | 52 | |
83 | 53 | /** Jednoduchá AJAXová funkce, načte obsah souboru a zobrazí ho ve výstupním okně. */ |
84 | 54 | function ajaxVykonatSQL() { |
85 | 55 | if (ajax.readyState == 4 || ajax.readyState == 0) { |
86 | | zobrazStav('Probíhá zpracování SQL příkazu…'); |
| 56 | zobraz(document.lokalizace.probihaSQL.value, stavovePole); |
87 | 57 | ajax.open("POST", 'ajax?akce=vykonat&sql=' + encodeURIComponent(getSQL()), true); |
88 | 58 | ajax.onreadystatechange = function() { |
89 | 59 | if (ajax.readyState == 4) { |
90 | | zobrazVystup(ajax.responseText); |
91 | | zobrazStav(''); |
| 60 | zobraz(ajax.responseText, vystupniPole); |
| 61 | zobraz('', stavovePole); |
92 | 62 | } |
93 | 63 | }; |
… |
… |
|
100 | 70 | function ajaxZobrazitHistorii() { |
101 | 71 | if (ajax.readyState == 4 || ajax.readyState == 0) { |
102 | | zobrazStav('Načítá se historie…'); |
| 72 | zobraz(document.lokalizace.probihaHistorie.value, stavovePole); |
103 | 73 | ajax.open("POST", 'ajax?akce=historie', true); |
104 | 74 | ajax.onreadystatechange = function() { |
105 | 75 | if (ajax.readyState == 4) { |
106 | | zobrazVystup(ajax.responseText); |
107 | | zobrazStav(''); |
| 76 | zobraz(ajax.responseText, vystupniPole); |
| 77 | zobraz('', stavovePole); |
108 | 78 | } |
109 | 79 | }; |
-
r20
|
r22
|
|
203 | 203 | font-style: italic; |
204 | 204 | } |
| 205 | |
| 206 | /** Skrytý formulář sloužící pro lokalizaci JavaScriptu */ |
| 207 | #lokalizace { |
| 208 | display: none; |
| 209 | } |
-
r15
|
r22
|
|
3 | 3 | var tab = "\t"; |
4 | 4 | |
5 | | function checkTab(evt) { |
| 5 | function zpracujTabulatory(evt) { |
6 | 6 | |
7 | 7 | var t = evt.target; |