]> matita.cs.unibo.it Git - helm.git/blob - helm/mowgli/home/xsl/minutes.xsl
Rendering improved.
[helm.git] / helm / mowgli / home / xsl / minutes.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:template match="/">
11  <html>
12   <head>
13    <title>
14     <xsl:text>Summary of </xsl:text>
15     <xsl:value-of select="minutes/about"/>
16    </title>
17   </head>
18   <body>
19    <h1>Summary of <xsl:value-of select="minutes/about"/></h1>
20    <h2>Participants:</h2>
21    <ul>
22     <xsl:apply-templates select="minutes/participant">
23      <xsl:sort select="document(concat('../xml/people/',@site,'/',@file,'.xml'))/*/surname"/>
24     </xsl:apply-templates>
25    </ul>
26    <h2>Presentations:</h2>
27    <dl>
28     <xsl:apply-templates select="minutes/presentation"/>
29    </dl>
30    <h2>Minutes:</h2>
31    <p>
32     <span style="font-weight: bold">Note:</span>
33     The following entries reports only the important observations raised during
34     the meeting and the decisions taken.
35    </p>
36    <ul>
37     <xsl:apply-templates select="minutes/entry"/>
38    </ul>
39   </body>
40  </html>
41 </xsl:template>
42
43 <xsl:template match="entry">
44  <li>
45   <xsl:if test="@author">
46    <xsl:text>[</xsl:text>
47     <a href="../people/{@author}.html">
48      <xsl:call-template name="person-name">
49       <xsl:with-param name="file" select="@author"/>
50      </xsl:call-template>
51     </a>
52    <xsl:text>]</xsl:text>
53   </xsl:if>
54   <xsl:apply-templates/>
55  </li>
56 </xsl:template>
57
58 <xsl:template match="participant">
59  <li>
60   <a href="../people/{@site}/{@file}.html">
61    <xsl:call-template name="person-name">
62     <xsl:with-param name="file" select="concat(@site,'/',@file)"/>
63    </xsl:call-template>
64   </a>
65   <xsl:text>&#x0A0;&#x0A0;(</xsl:text>
66   <a href="../sites/{@site}.html">
67    <xsl:value-of select="@site"/>
68   </a>
69   <xsl:text>)</xsl:text>
70  </li>
71 </xsl:template>
72
73 <xsl:template match="presentation">
74  <dt>
75   <a href="../people/{@site}/{@author}.html">
76    <xsl:call-template name="person-name">
77     <xsl:with-param name="file" select="concat(@site,'/',@author)"/>
78    </xsl:call-template>
79   </a>
80   <xsl:text>&#x0A0;(</xsl:text>
81   <a href="../sites/{@site}.html">
82    <xsl:value-of select="@site"/>
83   </a>
84   <xsl:text>): </xsl:text>
85   <xsl:if test="@media = 'slides'">
86    <xsl:choose>
87     <xsl:when test="@slides">
88      <xsl:text>[</xsl:text>
89      <a href="../../misc/{@slides}">
90       <xsl:text>Get the slides</xsl:text>
91      </a>
92      <xsl:text>]</xsl:text>
93     </xsl:when>
94     <xsl:otherwise>
95      <xsl:text>[slides unavailable]</xsl:text>
96     </xsl:otherwise>
97    </xsl:choose>
98   </xsl:if>
99  </dt>
100  <dd>
101   <xsl:copy-of select="*|text()"/>
102  </dd>
103 </xsl:template>
104
105 </xsl:stylesheet>