1 |
<!-- Templejt pro tvorbu indexu --> |
1 |
<!-- Templejt pro tvorbu indexu --> |
2 |
<!-- |
2 |
<!-- |
3 |
|
3 |
|
4 |
Templejt |
4 |
Templejt |
5 |
======== |
5 |
======== |
6 |
|
6 |
|
7 |
Tento templejt je zpracováván substitučním strojem, který funguje tak, že |
7 |
Tento templejt je zpracováván substitučním strojem, který funguje tak, že |
8 |
provede tyto úkony: |
8 |
provede tyto úkony: |
9 |
|
9 |
|
10 |
- načte templejt (do své paměti) |
10 |
- načte templejt (do své paměti) |
11 |
- vyhodí tento komentář (všechny komentáře před první platnou řádkou) |
11 |
- vyhodí tento komentář (všechny komentáře před první platnou řádkou) |
12 |
- najde v něm všechny proměnné ve tvaru $InfoXXX a zapamatuje si je |
12 |
- najde v něm všechny proměnné ve tvaru $InfoXXX a zapamatuje si je |
13 |
- najde v něm všechna nastavení proměnných ve tvaru $InfoXXX = "YYY" a zapamatuje si je |
13 |
- najde v něm všechna nastavení proměnných ve tvaru $InfoXXX = "YYY" a zapamatuje si je |
14 |
- vyhodí z templejtu definice proměnných a případný komentář bezprostředně před definicí |
14 |
- vyhodí z templejtu definice proměnných a případný komentář bezprostředně před definicí |
15 |
|
15 |
|
16 |
Poté je možné programem upravit obsah proměnných (typicky se generují |
16 |
Poté je možné programem upravit obsah proměnných (typicky se generují |
17 |
data na základě jiných proměnných a dat z disku na webu). Všechny proměnné |
17 |
data na základě jiných proměnných a dat z disku na webu). Všechny proměnné |
18 |
jsou programu dostupné v podobě pole, kde klíčem je jméno proměnné (bez |
18 |
jsou programu dostupné v podobě pole, kde klíčem je jméno proměnné (bez |
19 |
dolaru) a hodnotou je řetězec (i prázdý). Program může proměnné modifikovat |
19 |
dolaru) a hodnotou je řetězec (i prázdý). Program může proměnné modifikovat |
20 |
a definovat další (které se nepoužijí nejsou-li v právě použitém templejtu |
20 |
a definovat další (které se nepoužijí nejsou-li v právě použitém templejtu |
21 |
použity). |
21 |
použity). |
22 |
|
22 |
|
23 |
- provede substituci proměnných jejich obsahem |
23 |
- provede substituci proměnných jejich obsahem |
24 |
- výsledný řetězec - html stránku - předá klientovi |
24 |
- výsledný řetězec - html stránku - předá klientovi |
25 |
|
25 |
|
26 |
Proměnné |
26 |
Proměnné |
27 |
======== |
27 |
======== |
28 |
|
28 |
|
29 |
Proměnné jsou definovány pouze v templejtu. Co není v templejtu |
29 |
Proměnné jsou definovány pouze v templejtu. Co není v templejtu |
30 |
označeno jako proměnná nenahradí se skutečným obsahem. Aby mohl být |
30 |
označeno jako proměnná nenahradí se skutečným obsahem. Aby mohl být |
31 |
templejt přehledný je dovoleno používat víceřádkové obsahy proměnných. |
31 |
templejt přehledný je dovoleno používat víceřádkové obsahy proměnných. |
32 |
|
32 |
|
33 |
Definice hodnot je ve tvaru $InfoXXX = "YYY", kde |
33 |
Definice hodnot je ve tvaru $InfoXXX = "YYY", kde |
34 |
$InfoXXX je jméno proměnné (XXX jsou písmena, číslice, - a _ ) |
34 |
$InfoXXX je jméno proměnné (XXX jsou písmena, číslice, - a _ ) |
35 |
YYY je hodnota proměnné (je v uvozovkách, uvnitř použijte apostrofy) |
35 |
YYY je hodnota proměnné (je v uvozovkách, uvnitř použijte apostrofy) |
36 |
|
36 |
|
37 |
Hodnota proměnné může být na více řádků a může obsahovat odakazy na proměnné, |
37 |
Hodnota proměnné může být na více řádků a může obsahovat odakazy na proměnné, |
38 |
které se nahradí hodnotou těchto proměnných. |
38 |
které se nahradí hodnotou těchto proměnných. |
39 |
|
39 |
|
40 |
Definice hodnot proměnných bez jejich použití v templejtu se používá například |
40 |
Definice hodnot proměnných bez jejich použití v templejtu se používá například |
41 |
při definici jazykově závislých řetězců pro program (program je jazykově |
41 |
při definici jazykově závislých řetězců pro program (program je jazykově |
42 |
nezávislý). |
42 |
nezávislý). |
43 |
|
43 |
|
44 |
Substituce |
44 |
Substituce |
45 |
========== |
45 |
========== |
46 |
|
46 |
|
47 |
Úvodní komentáře na začátku templejtu budou odstraněny. |
47 |
Úvodní komentáře na začátku templejtu budou odstraněny. |
48 |
|
48 |
|
49 |
Všechny výskyty proměnných v templejtu budou nahrazeny hodnotou proměnných. |
49 |
Všechny výskyty proměnných v templejtu budou nahrazeny hodnotou proměnných. |
50 |
Hodnota proměnné může být prázdná, definovaná v templejtu nebo vypočítaná |
50 |
Hodnota proměnné může být prázdná, definovaná v templejtu nebo vypočítaná |
51 |
programem. Proměnné mouhou být v templejtu i vícekrát (nahradí se všude). |
51 |
programem. Proměnné mouhou být v templejtu i vícekrát (nahradí se všude). |
52 |
|
52 |
|
53 |
Všechny definice hodnot proměnných se z templejtu odstraní. Nezáleží na místě |
53 |
Všechny definice hodnot proměnných se z templejtu odstraní. Nezáleží na místě |
54 |
definice v templejtu. Vícenásobné uvedení hodnoty si (asi) zapamatuje poslední |
54 |
definice v templejtu. Vícenásobné uvedení hodnoty si (asi) zapamatuje poslední |
55 |
uvedenou hodnotu. |
55 |
uvedenou hodnotu. |
56 |
|
56 |
|
57 |
--> |
57 |
--> |
58 |
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
58 |
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
59 |
<html> |
59 |
<html> |
60 |
<head> |
60 |
<head> |
61 |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
61 |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
62 |
<title> $InfoHeadTitle $InfoSection </title> |
62 |
<title> $InfoHeadTitle $InfoSection </title> |
63 |
<meta name="keywords" content="$InfoKeyWords"> |
63 |
<meta name="keywords" content="$InfoKeyWords"> |
64 |
<meta name="description" content="$InfoDescription"> |
64 |
<meta name="description" content="$InfoDescription"> |
65 |
<!-- AUTOINCLUDE START "Page/Head.cs.ihtml" DO NOT REMOVE --> |
65 |
<!-- AUTOINCLUDE START "Page/Head.cs.ihtml" DO NOT REMOVE --> |
66 |
<link rel="StyleSheet" href="../../Web/CSS/MLAB.css" type="text/css" title="MLAB základní styl"> |
66 |
<link rel="StyleSheet" href="../../Web/CSS/MLAB.css" type="text/css" title="MLAB základní styl"> |
67 |
<link rel="StyleSheet" href="../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
67 |
<link rel="StyleSheet" href="../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
68 |
<link rel="shortcut icon" type="image/x-icon" href="../../Web/PIC/MLAB.ico"> |
68 |
<link rel="shortcut icon" type="image/x-icon" href="../../Web/PIC/MLAB.ico"> |
69 |
<script type="text/javascript" src="../../Web/JS/MLAB_Menu.js"></script> |
69 |
<script type="text/javascript" src="../../Web/JS/MLAB_Menu.js"></script> |
70 |
<!-- AUTOINCLUDE END --> |
70 |
<!-- AUTOINCLUDE END --> |
71 |
</head> |
71 |
</head> |
72 |
|
72 |
|
73 |
<body lang="cs"> |
73 |
<body lang="cs"> |
74 |
|
74 |
|
75 |
<!-- AUTOINCLUDE START "Page/Header.cs.ihtml" DO NOT REMOVE --> |
75 |
<!-- AUTOINCLUDE START "Page/Header.cs.ihtml" DO NOT REMOVE --> |
76 |
<!-- ============== HLAVICKA ============== --> |
76 |
<!-- ============== HLAVICKA ============== --> |
77 |
<div class="Header"> |
77 |
<div class="Header"> |
78 |
<script type="text/javascript"> |
78 |
<script type="text/javascript"> |
79 |
<!-- |
79 |
<!-- |
80 |
SetRelativePath("../../"); |
80 |
SetRelativePath("../../"); |
81 |
DrawHeader(); |
81 |
DrawHeader(); |
82 |
// --> |
82 |
// --> |
83 |
</script> |
83 |
</script> |
84 |
<noscript> |
84 |
<noscript> |
85 |
<p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p> |
85 |
<p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p> |
86 |
</noscript> |
86 |
</noscript> |
87 |
</div> |
87 |
</div> |
88 |
<!-- AUTOINCLUDE END --> |
88 |
<!-- AUTOINCLUDE END --> |
89 |
|
89 |
|
90 |
<!-- AUTOINCLUDE START "Page/Menu.cs.ihtml" DO NOT REMOVE --> |
90 |
<!-- AUTOINCLUDE START "Page/Menu.cs.ihtml" DO NOT REMOVE --> |
91 |
<!-- ============== MENU ============== --> |
91 |
<!-- ============== MENU ============== --> |
92 |
<div class="Menu"> |
92 |
<div class="Menu"> |
93 |
<script type="text/javascript"> |
93 |
<script type="text/javascript"> |
94 |
<!-- |
94 |
<!-- |
95 |
SetRelativePath("../../"); |
95 |
SetRelativePath("../../"); |
96 |
DrawMenu(); |
96 |
DrawMenu(); |
97 |
// --> |
97 |
// --> |
98 |
</script> |
98 |
</script> |
99 |
<noscript> |
99 |
<noscript> |
100 |
<p><b> Pro zobrazení (vložení) menu je potřeba JavaScript </b></p> |
100 |
<p><b> Pro zobrazení (vložení) menu je potřeba JavaScript </b></p> |
101 |
</noscript> |
101 |
</noscript> |
102 |
</div> |
102 |
</div> |
103 |
<!-- AUTOINCLUDE END --> |
103 |
<!-- AUTOINCLUDE END --> |
104 |
|
104 |
|
105 |
<!-- ============== TEXT ============== --> |
105 |
<!-- ============== TEXT ============== --> |
106 |
<div class="Text"> |
106 |
<div class="Text"> |
107 |
|
107 |
|
108 |
$InfoNoText = "Popis není k dispozici" |
108 |
$InfoNoText = "Popis není k dispozici" |
109 |
|
109 |
|
110 |
<p class="Title"> |
110 |
<p class="Title"> |
111 |
$InfoShortDescription |
111 |
$InfoShortDescription |
112 |
</p> |
112 |
</p> |
113 |
|
113 |
|
114 |
<p class="Subtitle"> |
114 |
<p class="Subtitle"> |
115 |
$InfoLongDescription |
115 |
$InfoLongDescription |
116 |
</p> |
116 |
</p> |
117 |
|
117 |
|
118 |
<!-- Klikací řádka s cestou --> |
118 |
<!-- Klikací řádka s cestou --> |
119 |
<h1 class="Small"> $InfoPath </h1> |
119 |
<h1 class="Small"> $InfoPath </h1> |
120 |
$InfoPathTitle = "Klikací cesta zpět" |
120 |
$InfoPathTitle = "Klikací cesta zpět" |
121 |
|
121 |
|
122 |
<table> |
122 |
<table> |
123 |
<tr> |
123 |
<tr> |
124 |
<th>Název</th> |
124 |
<th>Název</th> |
125 |
<th>Náhled</th> |
125 |
<th>Náhled</th> |
126 |
<th>Popis</th> |
126 |
<th>Popis</th> |
127 |
<th>WebSVN</th> |
127 |
<th>Projektová data</th> |
128 |
<th>HTML</th> |
128 |
<th>Možnost nákupu</th> |
129 |
<th>PDF</th> |
129 |
<th>Dokumentace</th> |
130 |
</tr> |
130 |
</tr> |
131 |
<!-- Řádky indexu se vkládají sem --> |
131 |
<!-- Řádky indexu se vkládají sem --> |
132 |
$InfoLine |
132 |
$InfoLine |
133 |
<!-- Formát vkládané řádky --> |
133 |
<!-- Formát vkládané řádky --> |
134 |
$InfoLine = |
134 |
$InfoLine = |
135 |
" |
135 |
" |
136 |
<tr> |
136 |
<tr> |
137 |
<td> $InfoName</td> |
137 |
<td> $InfoName</td> |
138 |
<td> $InfoPicture</td> |
138 |
<td> $InfoPicture</td> |
139 |
<td> <p><i> $InfoDescripion</i></p> |
139 |
<td> <p><i> $InfoDescripion</i></p> |
140 |
<p class='Small'> $InfoLongDescription</p></td> |
140 |
<p class='Small'> $InfoLongDescription</p></td> |
141 |
<td> $InfoWebSVN <br> $InfoWIKI</td> |
141 |
<td> $InfoWebSVN <br> $InfoWIKI</td> |
142 |
<td> $InfoHTML</td> |
142 |
<td> $InfoHTML</td> |
143 |
<td> $InfoPDF</td> |
143 |
<td> $InfoPDF</td> |
144 |
</tr> |
144 |
</tr> |
145 |
" |
145 |
" |
146 |
<!-- Formát elementu pro oddělení adresářů a projektů --> |
146 |
<!-- Formát elementu pro oddělení adresářů a projektů --> |
147 |
$InfoSeparator = |
147 |
$InfoSeparator = |
148 |
" |
148 |
" |
149 |
<tr> |
149 |
<tr> |
150 |
<td colspan='6'> <hr> </td> |
150 |
<td colspan='6'> <hr> </td> |
151 |
</tr>" |
151 |
</tr>" |
152 |
<!-- Lepidlo pro spojování více odkazů najednou v jedné položce --> |
152 |
<!-- Lepidlo pro spojování více odkazů najednou v jedné položce --> |
153 |
$InfoGlue = "<br>" |
153 |
$InfoGlue = "<br>" |
154 |
<!-- Co se dává do položek, které nemají obsah --> |
154 |
<!-- Co se dává do položek, které nemají obsah --> |
155 |
$InfoNoPicture = "NoPicture.jpg" |
155 |
$InfoNoPicture = "NoPicture.jpg" |
156 |
$InfoNoInfo = "--" |
156 |
$InfoNoInfo = "--" |
157 |
$InfoSVNTitle = "Přístup ke všem souborům" |
157 |
$InfoSVNTitle = "Přístup ke všem souborům" |
158 |
$InfoWikiTitle = "Wiki stránka pro modul" |
158 |
$InfoWikiTitle = "Wiki stránka pro modul" |
159 |
</table> |
159 |
</table> |
160 |
|
160 |
|
161 |
</div> |
161 |
</div> |
162 |
|
162 |
|
163 |
<!-- AUTOINCLUDE START "Page/Footer.cs.ihtml" DO NOT REMOVE --> |
163 |
<!-- AUTOINCLUDE START "Page/Footer.cs.ihtml" DO NOT REMOVE --> |
164 |
<!-- ============== PATIČKA ============== --> |
164 |
<!-- ============== PATIČKA ============== --> |
165 |
<div class="Footer"> |
165 |
<div class="Footer"> |
166 |
<script type="text/javascript"> |
166 |
<script type="text/javascript"> |
167 |
<!-- |
167 |
<!-- |
168 |
SetRelativePath("../../"); |
168 |
SetRelativePath("../../"); |
169 |
DrawFooter(); |
169 |
DrawFooter(); |
170 |
// --> |
170 |
// --> |
171 |
</script> |
171 |
</script> |
172 |
<noscript> |
172 |
<noscript> |
173 |
<p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p> |
173 |
<p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p> |
174 |
</noscript> |
174 |
</noscript> |
175 |
</div> |
175 |
</div> |
176 |
<!-- AUTOINCLUDE END --> |
176 |
<!-- AUTOINCLUDE END --> |
177 |
|
177 |
|
178 |
</body> |
178 |
</body> |
179 |
</html> |
179 |
</html> |