annotate xslt/menu.xslt @ 721:81ad082bc837

Simplified things by including books.xslt, download.xslt and security.xslt into article.xslt, and always using article.xslt to generate HTMLs. While here, moved versions.xml from common dependencies to article dependencies. Fixed menu in 404.html by applying templates from menu.xslt, and fixed its dependency on DTD.
author Ruslan Ermilov <ru@nginx.com>
date Fri, 12 Oct 2012 09:10:31 +0000
parents b133b1f44765
children 2c57830e0149
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
170
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1 <?xml version="1.0" encoding="utf-8"?>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
3
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
4 <xsl:template match="menu/item">
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
5 <xsl:choose>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
6
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
7 <xsl:when test="@href = $LINK">
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
8 <xsl:choose>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
9
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
10 <xsl:when test="$YEAR and @href='/'">
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
11
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
12 <a href="./"> news </a>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
13 <br/>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
14 </xsl:when>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
15
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
16 <xsl:otherwise>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
17
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
18 <xsl:value-of select=" normalize-space(text())"/>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
19 <br/>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
20 </xsl:otherwise>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
21 </xsl:choose>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
22 </xsl:when>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
23
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
24 <xsl:otherwise>
694
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
25 <xsl:choose>
170
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
26
707
b133b1f44765 Regenerated.
Ruslan Ermilov <ru@nginx.com>
parents: 694
diff changeset
27 <xsl:when test="$TRANS and @switchlang">
170
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
28 <xsl:choose>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
29
694
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
30 <xsl:when test="contains($TRANS, @switchlang)">
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
31
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
32 <a>
170
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
33
694
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
34 <xsl:attribute name="href">
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
35
707
b133b1f44765 Regenerated.
Ruslan Ermilov <ru@nginx.com>
parents: 694
diff changeset
36 <xsl:value-of select=" concat($ROOT, '/', @switchlang, '/', substring-after($LINK, concat('/', $LANG, '/')))"/>
694
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
37 </xsl:attribute>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
38
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
39 <xsl:value-of select=" normalize-space(text())"/>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
40
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
41 </a>
170
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
42 </xsl:when>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
43
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
44 <xsl:otherwise>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
45
694
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
46 <a class="notrans">
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
47 <xsl:value-of select=" normalize-space(text())"/>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
48 </a>
170
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
49 </xsl:otherwise>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
50 </xsl:choose>
694
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
51 </xsl:when>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
52
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
53 <xsl:otherwise>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
54
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
55 <a>
170
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
56
694
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
57 <xsl:attribute name="href">
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
58 <xsl:choose>
170
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
59
694
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
60 <xsl:when test="starts-with(@href, $DIRNAME)">
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
61 <xsl:choose>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
62
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
63 <xsl:when test="substring-after(@href, $DIRNAME) = ''">
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
64 ./</xsl:when>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
65
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
66 <xsl:otherwise>
170
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
67
694
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
68 <xsl:value-of select=" substring-after(@href, $DIRNAME)"/>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
69 </xsl:otherwise>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
70 </xsl:choose>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
71 </xsl:when>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
72
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
73 <xsl:otherwise>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
74
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
75 <xsl:value-of select=" concat($ROOT, @href)"/>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
76 </xsl:otherwise>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
77 </xsl:choose>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
78 </xsl:attribute>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
79
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
80 <xsl:value-of select=" normalize-space(text())"/>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
81
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
82 </a>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
83
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
84 <xsl:if test="@lang">
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
85 <xsl:text> [</xsl:text>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
86 <xsl:value-of select="@lang"/>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
87 <xsl:text>]</xsl:text>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
88 </xsl:if>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
89 </xsl:otherwise>
2ced25001893 Regenerated.
Vladimir Homutov <vl@nginx.com>
parents: 649
diff changeset
90 </xsl:choose>
170
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
91
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
92 <br/>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
93 </xsl:otherwise>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
94 </xsl:choose>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
95 </xsl:template>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
96
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
97 <xsl:template match="menu/item[@year]">
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
98
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
99 <xsl:if test="$YEAR or $LINK='/'">
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
100 <xsl:choose>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
101
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
102 <xsl:when test="$YEAR=@year">
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
103
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
104 <xsl:value-of select="@year"/>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
105 <br/>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
106 </xsl:when>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
107
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
108 <xsl:otherwise>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
109
649
ba913f7cf7c1 Regenerated.
Valentin Bartenev <vbart@nginx.com>
parents: 409
diff changeset
110 <xsl:if test="@href">
ba913f7cf7c1 Regenerated.
Valentin Bartenev <vbart@nginx.com>
parents: 409
diff changeset
111 <a href="{@href}">
ba913f7cf7c1 Regenerated.
Valentin Bartenev <vbart@nginx.com>
parents: 409
diff changeset
112 <xsl:value-of select="@year"/>
ba913f7cf7c1 Regenerated.
Valentin Bartenev <vbart@nginx.com>
parents: 409
diff changeset
113 </a>
ba913f7cf7c1 Regenerated.
Valentin Bartenev <vbart@nginx.com>
parents: 409
diff changeset
114 </xsl:if>
170
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
115
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
116 <br/>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
117 </xsl:otherwise>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
118 </xsl:choose>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
119 </xsl:if>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
120 </xsl:template>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
121
409
6fa99c92e40a Regenerated.
Ruslan Ermilov <ru@nginx.com>
parents: 170
diff changeset
122 <xsl:template match="menu/item[starts-with(@href, 'http://') or starts-with(@href, 'https://')]">
170
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
123
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
124 <a href="{@href}">
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
125 <xsl:value-of select=" normalize-space(text())"/>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
126 </a>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
127
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
128 <xsl:if test="@lang">
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
129 <xsl:text> [</xsl:text>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
130 <xsl:value-of select="@lang"/>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
131 <xsl:text>]</xsl:text>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
132 </xsl:if>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
133
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
134 <br/>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
135 </xsl:template>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
136
649
ba913f7cf7c1 Regenerated.
Valentin Bartenev <vbart@nginx.com>
parents: 409
diff changeset
137 <xsl:template match="menu/item[not(@href) and not(@year)]">
170
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
138
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
139 <xsl:value-of select=" normalize-space(text())"/>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
140 <br/>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
141 </xsl:template>
cd2698ea00ab Added generated XSLTs.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
142
707
b133b1f44765 Regenerated.
Ruslan Ermilov <ru@nginx.com>
parents: 694
diff changeset
143 </xsl:stylesheet>