equal
deleted
inserted
replaced
19 <span title="tento text pochází ze skriptu"><m:skript jazyk="bash">uname -o</m:skript></span>. |
19 <span title="tento text pochází ze skriptu"><m:skript jazyk="bash">uname -o</m:skript></span>. |
20 </em> |
20 </em> |
21 </p> |
21 </p> |
22 |
22 |
23 <p> |
23 <p> |
24 Díky skriptování můžeme stránky obohatit o prakticky libovolný obsah. |
24 Díky skriptování můžeme stránky obohatit o prakticky libovolný obsah – |
25 Tato funkce ale může být nebezpečná – pokud byste spustili generátor na stránkách, |
25 jak prostý text, tak i XHTML fragmenty.<m:podČarou>zapíná se pomocí atributu |
|
26 <code>výstup="xml"</code> a generátor pak kontroluje správné formátování – |
|
27 nestane se vám, že byste omylem vygenerovali stránky s překříženými nebo neuzavřenými značkami.</m:podČarou> |
|
28 </p> |
|
29 <p> |
|
30 Skriptování ale může být nebezpečné, pokud byste spustili generátor na stránkách, |
26 které psal někdo nedůvěryhodný a vložil do nich škodlivý kód. |
31 které psal někdo nedůvěryhodný a vložil do nich škodlivý kód. |
|
32 Kromě toho, ukázková sada stránek by měla být přeložitelná kdekoli a mít minimum závislostí |
|
33 (ne každý musí mít nainstalovaný Perl nebo Python či další podporované interprety). |
27 Proto je skriptování ve výchozím stavu vypnuté – je potřeba ho povolit v souboru <code>web.conf</code>. |
34 Proto je skriptování ve výchozím stavu vypnuté – je potřeba ho povolit v souboru <code>web.conf</code>. |
28 </p> |
35 </p> |
29 |
36 |
30 <h2>Podporované jazyky</h2> |
37 <h2>Podporované jazyky</h2> |
31 <p> |
38 <p> |
38 <td>Jazyk</td> |
45 <td>Jazyk</td> |
39 <td>Interpret</td> |
46 <td>Interpret</td> |
40 </tr> |
47 </tr> |
41 </thead> |
48 </thead> |
42 <tbody> |
49 <tbody> |
43 <m:skript jazyk="perl" výstup="xml"><![CDATA[ |
50 <m:skript jazyk="perl" výstup="xml"><![CDATA[ |
44 use strict; |
51 use strict; |
|
52 use warnings; |
45 |
53 |
46 open(JAVA, "<", $ENV{"XWG_SKRIPTOVANI_JAVA"}) or die $!; |
54 open(JAVA, "<", $ENV{"XWG_SKRIPTOVANI_JAVA"}) or die $!; |
47 |
55 |
48 while (<JAVA>) { |
56 while (<JAVA>) { |
49 if (/podporovanýJazyk\.put\("(\w+)",\s*"(.*)"\);/) { |
57 if (/podporovanýJazyk\.put\("(\w+)",\s*"(.*)"\);/) { |
60 Lepšího výsledku bychom samozřejmě dosáhli pomocí XPath dotazu, |
68 Lepšího výsledku bychom samozřejmě dosáhli pomocí XPath dotazu, |
61 ale toto je příklad na Perl :-) |
69 ale toto je příklad na Perl :-) |
62 --> |
70 --> |
63 <pre><m:skript jazyk="perl"><![CDATA[ |
71 <pre><m:skript jazyk="perl"><![CDATA[ |
64 use strict; |
72 use strict; |
|
73 use warnings; |
65 |
74 |
66 open(XML, "<", $ENV{"XWG_STRANKA_SOUBOR"}); |
75 open(XML, "<", $ENV{"XWG_STRANKA_SOUBOR"}); |
67 my %skripty; |
76 my %skripty; |
68 |
77 |
69 while (<XML>) { |
78 while (<XML>) { |
107 <td>Proměnná</td> |
116 <td>Proměnná</td> |
108 <td>Význam</td> |
117 <td>Význam</td> |
109 </tr> |
118 </tr> |
110 </thead> |
119 </thead> |
111 <tbody> |
120 <tbody> |
112 <m:skript jazyk="perl" výstup="xml"><![CDATA[ |
121 <!-- Pokud načítáme skript ze souboru, je atribut jazyk nepovinný. --> |
113 use strict; |
122 <m:skript jazyk="perl" výstup="xml" src="skriptování-proměnné.pl"/> |
114 |
|
115 open(JAVA, "<", $ENV{"XWG_SKRIPTOVANI_JAVA"}) or die $!; |
|
116 |
|
117 while (<JAVA>) { |
|
118 #i.put("bash", "/bin/bash"); |
|
119 if (/"(.*)=".*\/\/\s+env:(.*)/) { |
|
120 print "<tr><td><code>$1</code></td><td>$2</td></tr>\n"; |
|
121 } |
|
122 } |
|
123 ]]></m:skript> |
|
124 </tbody> |
123 </tbody> |
125 </table> |
124 </table> |
126 |
125 |
127 <p> |
126 <p> |
128 Kód: |
127 Kód: |