]> matita.cs.unibo.it Git - helm.git/blob - helm/mowgli/home/xsl/events.xsl
Several bug-fixes:
[helm.git] / helm / mowgli / home / xsl / events.xsl
1 <?xml version="1.0"?>
2
3 <xsl:stylesheet version="1.0"
4                 xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
5
6 <xsl:import href="common.xsl"/>
7
8 <xsl:output method="xml"/>
9
10 <xsl:param name="events-class" select="''"/>
11 <xsl:param name="today"/>
12
13 <xsl:template match="/">
14  <html>
15   <head>
16    <title>
17     <xsl:value-of select="$events-class"/>
18     <xsl:text> Events</xsl:text>
19    </title>
20   </head>
21   <body>
22     <h1>
23      <xsl:value-of select="$events-class"/>
24      <xsl:text> Events</xsl:text>
25     </h1>
26     <xsl:if test="$events-class = 'Other'">
27      [Sorted by event date] [<a href="deadlines.html">Sorted by deadline</a>]
28      <br /><br />
29      <hr />
30     </xsl:if>
31     <dl>
32      <xsl:apply-templates select="events/event[when/begin &gt;= $today]">
33       <xsl:sort select="when/begin" data-type="number"/>
34      </xsl:apply-templates>
35     </dl>
36     <hr />
37     <h1>Past Events</h1>
38     <dl>
39      <xsl:apply-templates select="events/event[when/begin &lt; $today]">
40       <xsl:sort select="when/begin" data-type="number"/>
41      </xsl:apply-templates>
42     </dl>
43   </body>
44  </html>
45 </xsl:template>
46
47 <xsl:template match="event">
48  <dt>
49   <a href="{url}"><xsl:value-of select="name"/></a>
50  </dt>
51  <dd>
52   <xsl:if test="where">
53    <b><xsl:value-of select="where"/></b>
54    <xsl:text> </xsl:text>
55   </xsl:if>
56   <xsl:if test="when">
57    <b>
58     <xsl:call-template name="print_interval">
59      <xsl:with-param name="begin" select="when/begin/text()"/>
60      <xsl:with-param name="end" select="when/end/text()"/>
61     </xsl:call-template>
62    </b>
63    <br />
64   </xsl:if>
65   <xsl:if test="description">
66    <p><xsl:value-of select="description"/></p>
67   </xsl:if>
68   <xsl:if test="deadline">
69    <p>Deadlines:</p>
70    <ul>
71     <xsl:apply-templates select="deadline"/>
72    </ul>
73   </xsl:if>
74   <br />
75  </dd>
76 </xsl:template>
77
78 <xsl:template match="deadline">
79  <li>
80   <xsl:variable name="kind">
81    <xsl:call-template name="color_of_deadline_kind">
82     <xsl:with-param name="kind" select="@kind"/>
83    </xsl:call-template>
84   </xsl:variable>
85   <b>
86    <span style="color: {$kind}">
87     <xsl:call-template name="print_date">
88      <xsl:with-param name="date" select="date/text()"/>
89     </xsl:call-template>
90    </span>
91   </b>
92   <xsl:text> </xsl:text>
93   <xsl:value-of select="description"/>
94  </li>
95 </xsl:template>
96
97 </xsl:stylesheet>