0,0 → 1,178 |
<!-- Templejt pro tvorbu indexu --> |
<!-- |
|
Templejt |
======== |
|
Tento templejt je zpracováván substitučním strojem, který funguje tak, že |
provede tyto úkony: |
|
- načte templejt (do své paměti) |
- vyhodí tento komentář (všechny komentáře před první platnou řádkou) |
- najde v něm všechny proměnné ve tvaru $InfoXXX a zapamatuje si je |
- najde v něm všechna nastavení proměnných ve tvaru $InfoXXX = "YYY" a zapamatuje si je |
- vyhodí z templejtu definice proměnných a případný komentář bezprostředně před definicí |
|
Poté je možné programem upravit obsah proměnných (typicky se generují |
data na základě jiných proměnných a dat z disku na webu). Všechny proměnné |
jsou programu dostupné v podobě pole, kde klíčem je jméno proměnné (bez |
dolaru) a hodnotou je řetězec (i prázdý). Program může proměnné modifikovat |
a definovat další (které se nepoužijí nejsou-li v právě použitém templejtu |
použity). |
|
- provede substituci proměnných jejich obsahem |
- výsledný řetězec - html stránku - předá klientovi |
|
Proměnné |
======== |
|
Proměnné jsou definovány pouze v templejtu. Co není v templejtu |
označeno jako proměnná nenahradí se skutečným obsahem. Aby mohl být |
templejt přehledný je dovoleno používat víceřádkové obsahy proměnných. |
|
Definice hodnot je ve tvaru $InfoXXX = "YYY", kde |
$InfoXXX je jméno proměnné (XXX jsou písmena, číslice, - a _ ) |
YYY je hodnota proměnné (je v uvozovkách, uvnitř použijte apostrofy) |
|
Hodnota proměnné může být na více řádků a může obsahovat odakazy na proměnné, |
které se nahradí hodnotou těchto proměnných. |
|
Definice hodnot proměnných bez jejich použití v templejtu se používá například |
při definici jazykově závislých řetězců pro program (program je jazykově |
nezávislý). |
|
Substituce |
========== |
|
Úvodní komentáře na začátku templejtu budou odstraněny. |
|
Všechny výskyty proměnných v templejtu budou nahrazeny hodnotou proměnných. |
Hodnota proměnné může být prázdná, definovaná v templejtu nebo vypočítaná |
programem. Proměnné mouhou být v templejtu i vícekrát (nahradí se všude). |
|
Všechny definice hodnot proměnných se z templejtu odstraní. Nezáleží na místě |
definice v templejtu. Vícenásobné uvedení hodnoty si (asi) zapamatuje poslední |
uvedenou hodnotu. |
|
--> |
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> |
<html> |
<head> |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
<title> $InfoHeadTitle $InfoSection </title> |
<meta name="keywords" content="$InfoKeyWords"> |
<meta name="description" content="$InfoDescription"> |
<!-- AUTOINCLUDE START "Page/Head.cs.ihtml" DO NOT REMOVE --> |
<link rel="StyleSheet" href="../../Web/CSS/MLAB.css" type="text/css" title="MLAB základní styl"> |
<link rel="StyleSheet" href="../../Web/CSS/MLAB_Print.css" type="text/css" media="print"> |
<link rel="shortcut icon" type="image/x-icon" href="../../Web/PIC/MLAB.ico"> |
<script type="text/javascript" src="../../Web/JS/MLAB_Menu.js"></script> |
<!-- AUTOINCLUDE END --> |
</head> |
|
<body lang="cs"> |
|
<!-- AUTOINCLUDE START "Page/Header.cs.ihtml" DO NOT REMOVE --> |
<!-- ============== HLAVICKA ============== --> |
<div class="Header"> |
<script type="text/javascript"> |
<!-- |
SetRelativePath("../../"); |
DrawHeader(); |
// --> |
</script> |
<noscript> |
<p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p> |
</noscript> |
</div> |
<!-- AUTOINCLUDE END --> |
|
<!-- AUTOINCLUDE START "Page/Menu.cs.ihtml" DO NOT REMOVE --> |
<!-- ============== MENU ============== --> |
<div class="Menu"> |
<script type="text/javascript"> |
<!-- |
SetRelativePath("../../"); |
DrawMenu(); |
// --> |
</script> |
<noscript> |
<p><b> Pro zobrazení (vložení) menu je potřeba JavaScript </b></p> |
</noscript> |
</div> |
<!-- AUTOINCLUDE END --> |
|
<!-- ============== TEXT ============== --> |
<div class="Text"> |
|
$InfoNoText = "Popis není k dispozici" |
|
<p class="Title"> |
$InfoShortDescription |
</p> |
|
<p class="Subtitle"> |
$InfoLongDescription |
</p> |
|
<!-- Klikací řádka s cestou --> |
<h1 class="Small"> $InfoPath </h1> |
$InfoPathTitle = "Klikací cesta zpět" |
|
<table> |
<tr> |
<th>Název</th> |
<th>Náhled</th> |
<th>Popis</th> |
<th>WebSVN</th> |
<th>HTML</th> |
<th>PDF</th> |
</tr> |
<!-- Řádky indexu se vkládají sem --> |
$InfoLine |
<!-- Formát vkládané řádky --> |
$InfoLine = |
" |
<tr> |
<td> $InfoName</td> |
<td> $InfoPicture</td> |
<td> <p><i> $InfoDescripion</i></p> |
<p class='Small'> $InfoLongDescription</p></td> |
<td> $InfoWebSVN</td> |
<td> $InfoHTML</td> |
<td> $InfoPDF</td> |
</tr> |
" |
<!-- Formát elementu pro oddělení adresářů a projektů --> |
$InfoSeparator = |
" |
<tr> |
<td colspan='6'> <hr> </td> |
</tr>" |
<!-- Lepidlo pro spojování více odkazů najednou v jedné položce --> |
$InfoGlue = "<br>" |
<!-- Co se dává do položek, které nemají obsah --> |
$InfoNoPicture = "NoPicture.jpg" |
$InfoNoInfo = "--" |
$InfoSVNTitle = "Přístup ke všem souborům" |
</table> |
|
</div> |
|
<!-- AUTOINCLUDE START "Page/Footer.cs.ihtml" DO NOT REMOVE --> |
<!-- ============== PATIČKA ============== --> |
<div class="Footer"> |
<script type="text/javascript"> |
<!-- |
SetRelativePath("../../"); |
DrawFooter(); |
// --> |
</script> |
<noscript> |
<p><b> Pro zobrazení (vložení) hlavičky je potřeba JavaScript </b></p> |
</noscript> |
</div> |
<!-- AUTOINCLUDE END --> |
|
</body> |
</html> |