franta-hg@107
|
1 |
<?xml version="1.0" encoding="UTF-8"?>
|
franta-hg@107
|
2 |
<xsl:stylesheet version="2.0"
|
franta-hg@107
|
3 |
xmlns="http://www.w3.org/1999/xhtml"
|
franta-hg@107
|
4 |
xmlns:h="http://www.w3.org/1999/xhtml"
|
franta-hg@107
|
5 |
xmlns:s="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/strana"
|
franta-hg@107
|
6 |
xmlns:k="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/konfigurace"
|
franta-hg@107
|
7 |
xmlns:m="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/makro"
|
franta-hg@107
|
8 |
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
franta-hg@107
|
9 |
xmlns:fn="http://www.w3.org/2005/xpath-functions"
|
franta-hg@107
|
10 |
xmlns:svg="http://www.w3.org/2000/svg"
|
franta-hg@107
|
11 |
xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
franta-hg@107
|
12 |
exclude-result-prefixes="fn h s k m xs">
|
franta-hg@107
|
13 |
|
franta-hg@107
|
14 |
<!-- Vypíše verze z verzovacího systému: -->
|
franta-hg@107
|
15 |
<xsl:template match="m:hg-verze">
|
franta-hg@107
|
16 |
<xsl:variable name="zadáníSkriptu">
|
franta-hg@107
|
17 |
<!--
|
franta-hg@107
|
18 |
TODO:
|
franta-hg@107
|
19 |
Zahazovat XML deklaraci bychom mohli v Javě u všech skriptů…
|
franta-hg@107
|
20 |
Nicméně současná dohoda je taková, že skripty vracejí fragment, ne celý dokument,
|
franta-hg@107
|
21 |
což má výhodu v tom, že můžou vrátit kus textu a nějakou tu značku
|
franta-hg@107
|
22 |
a nemusí to být zabalené v kořenovém elementu.
|
franta-hg@107
|
23 |
|
franta-hg@107
|
24 |
-->
|
franta-hg@107
|
25 |
<m:skript jazyk="bash" výstup="xml">hg log --style xml | awk '{if(NR>1)print}';</m:skript>
|
franta-hg@107
|
26 |
<!--
|
franta-hg@107
|
27 |
Také bychom filtrování mohli provés ve skriptu…
|
franta-hg@107
|
28 |
hg log … | xpath -e "//logentry[tag[starts-with(., 'v')]]" 2>/dev/null
|
franta-hg@107
|
29 |
…ale to by bylo trochu zbytečně pracné.
|
franta-hg@107
|
30 |
-->
|
franta-hg@107
|
31 |
</xsl:variable>
|
franta-hg@107
|
32 |
|
franta-hg@107
|
33 |
<xsl:variable name="výstupSkriptu">
|
franta-hg@107
|
34 |
<xsl:apply-templates select="$zadáníSkriptu/*"/>
|
franta-hg@107
|
35 |
</xsl:variable>
|
franta-hg@107
|
36 |
|
franta-hg@107
|
37 |
<table>
|
franta-hg@107
|
38 |
<thead>
|
franta-hg@107
|
39 |
<tr>
|
franta-hg@107
|
40 |
<td>Číslo verze</td>
|
franta-hg@107
|
41 |
<td>Datum vydání</td>
|
franta-hg@107
|
42 |
</tr>
|
franta-hg@107
|
43 |
</thead>
|
franta-hg@107
|
44 |
<tbody style="text-align: right;">
|
franta-hg@107
|
45 |
<!--
|
franta-hg@107
|
46 |
Výstup skriptu se bude nacházet v XHTML jmenném prostoru, což je obvykle v pořádku,
|
franta-hg@107
|
47 |
ale pro mezivýsledky to není úplně vhodné.
|
franta-hg@107
|
48 |
-->
|
franta-hg@107
|
49 |
<xsl:for-each select="$výstupSkriptu/h:log/h:logentry[h:tag[starts-with(text(), 'v')]]">
|
franta-hg@107
|
50 |
<tr>
|
franta-hg@107
|
51 |
<td><xsl:value-of select="substring(h:tag/text(), 2)"/></td>
|
franta-hg@107
|
52 |
<td><xsl:value-of select="format-dateTime(h:date, '[D]. [M]. [Y0001]')"/></td>
|
franta-hg@107
|
53 |
</tr>
|
franta-hg@107
|
54 |
</xsl:for-each>
|
franta-hg@107
|
55 |
</tbody>
|
franta-hg@107
|
56 |
</table>
|
franta-hg@107
|
57 |
</xsl:template>
|
franta-hg@107
|
58 |
|
franta-hg@107
|
59 |
</xsl:stylesheet>
|
franta-hg@107
|
60 |
|