Merge branch 'master' of caffeine.uwaterloo.ca:/users/www/www
[mspang/www.git] / xsl / events.xsl
index 7c490ef..7d0f7ce 100644 (file)
@@ -1,24 +1,24 @@
 <?xml version='1.0'?>
 
-<xsl:stylesheet version="2.0"
-    xmlns="http://www.w3.org/1999/xhtml"
+<xsl:stylesheet version="1.1"
     xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-    xmlns:xs="http://www.w3.org/2001/XMLSchema"
-    xmlns:fn="http://www.w3.org/2005/xpath-functions"
-    xmlns:csc="http://www.csclub.uwaterloo.ca/xslt">
+    xmlns:csc="http://csclub.uwaterloo.ca/xsltproc"
+    xmlns="http://www.w3.org/1999/xhtml"
+    exclude-result-prefixes="csc">
+<xsl:output method="xml" />
 
 <xsl:template name="events">
   <tr>
     <th colspan="2" class="news">Upcoming Events</th>
   </tr>
   <xsl:for-each select="document(concat($g_root, '/events.xml'))/eventdefs/eventitem">
-    <xsl:sort select="translate(@date, '-', '')" 
+    <xsl:sort select="translate(@date, '-', '')"
         order="ascending" data-type="number" />
     <xsl:if test="translate(@date, '-', '') &gt;= translate($g_date, '-', '')">
       <tr>
         <td class="eventdate"><xsl:value-of select="@date" /></td>
-        <td rowspan="2" valign="top" class="eventitem"> 
-          <a href="{translate(concat('/events/', @room, '-', @date, '-', @time, '.html'), ' ', '_')}">
+        <td rowspan="2" valign="top" class="eventitem">
+          <a href="{translate(concat($g_pre, 'events/', @room, '-', @date, '-', @time), ' ', '_')}">
             <xsl:value-of select="@title" />
           </a>.
           <xsl:value-of select="short" />
 <xsl:template name="events-by-term">
   <xsl:param name="date" />
   <p>The events for <xsl:value-of select="csc:term($date)" /> are listed here.
-    You can also <a href="{$pre}events.ics">download an ICS</a> of them.</p>
+    You can also <a href="{$g_pre}events.ics">download an ICS</a> of them.</p>
   <xsl:for-each select="document(concat($g_root, '/events.xml'))/eventdefs/eventitem">
-    <xsl:sort select="translate(@date, '-', '')" 
+    <xsl:sort select="translate(@date, '-', '')"
         order="ascending" data-type="number" />
     <xsl:if test="csc:term(@date) = csc:term($date)">
-      <h3><a href="{translate(concat($pre, 'events/', @room, '-', @date, '-', @time, '.html'), ' ', '_')}"><xsl:value-of select="@title" /></a></h3>
+      <h3><a href="{translate(concat($g_pre, 'events/', @room, '-', @date, '-', @time), ' ', '_')}"><xsl:value-of select="@title" /></a></h3>
       <p>
         <strong>
-          <xsl:value-of select="@room" />, 
-          <xsl:value-of select="@date" />, 
+          <xsl:value-of select="@room" />,
+          <xsl:value-of select="@date" />,
           <xsl:value-of select="@time" />:
         </strong>
         <xsl:value-of select="short" />.
 </xsl:template>
 
 <xsl:template match="eventitem">
-  <xsl:result-document method="xml" encoding="ISO-8859-1" 
-      doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" 
-      doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
-      href="{translate(concat($g_root, '/events/', @room, '-', @date, '-', @time, '.html'), ' ', '_')}">
+  <xsl:document method="xml" encoding="ISO-8859-1"
+      doctype-public="-//W3C//DTD XHTML 1.1//EN"
+      doctype-system="http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"
+      href="{translate(concat($g_outdir, @room, '-', @date, '-', @time, '.html'), ' ', '_')}">
     <html>
       <head>
         <title><xsl:value-of select="@title" /></title>
-        <link rel="stylesheet" href="{$pre}default.css" type="text/css" />
+        <link rel="stylesheet" href="{$g_pre}default.css" type="text/css" />
       </head>
-      <body><div>
+      <body><div class="content">
         <xsl:call-template name="header" />
         <h2>Information</h2>
         <div>
           <p><xsl:value-of select="@title" />.</p>
           <p>
             Held in <xsl:value-of select="@room" />, on
-            <xsl:value-of select="@date" />, at 
+            <xsl:value-of select="@date" />, at
             <xsl:value-of select="@time" />.
           </p>
         </div>
@@ -96,7 +96,7 @@
         <xsl:call-template name="footer" />
       </div></body>
     </html>
-  </xsl:result-document>
+  </xsl:document>
 </xsl:template>
 
 <xsl:template match="generate-event-files">
 
 <xsl:template match="old-events">
   <xsl:for-each select="document(concat($g_root, '/events.xml'))/eventdefs/eventitem">
-    <xsl:sort select="translate(@date, '-', '')" 
+    <xsl:sort select="translate(@date, '-', '')"
         order="descending" data-type="number" />
     <xsl:if test="not(preceding-sibling::*[csc:term(@date)=csc:term(current()/@date)]) and not(csc:term(@date) = csc:term($g_date))">
-      <p><a href="{translate(concat('old-',csc:term(@date), '.html'), ' ', '_')}">
+      <p><a href="{translate(concat('old-',csc:term(@date)), ' ', '_')}">
         <xsl:value-of select="csc:term(@date)" />
       </a></p>
-      <xsl:result-document method="xml" encoding="ISO-8859-1" 
-            doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" 
-            doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
-            href="{translate(concat($g_root, '/events/old-', csc:term(@date), '.html'), ' ', '_')}">
+      <xsl:document method="xml" encoding="ISO-8859-1"
+            doctype-public="-//W3C//DTD XHTML 1.1//EN"
+            doctype-system="http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"
+            href="{translate(concat($g_outdir, 'old-', csc:term(@date), '.html'), ' ', '_')}">
         <html>
           <head>
             <title>Events for <xsl:value-of select="csc:term(@date)" /></title>
-            <link rel="stylesheet" href="{$pre}default.css" type="text/css" />
+            <link rel="stylesheet" href="{$g_pre}default.css" type="text/css" />
           </head>
-          <body><div>
+          <body><div class="content">
             <xsl:call-template name="header" />
             <xsl:call-template name="events-by-term">
                 <xsl:with-param name="date" select="@date" />
             <xsl:call-template name="footer" />
           </div></body>
         </html>
-      </xsl:result-document>
+      </xsl:document>
     </xsl:if>
   </xsl:for-each>
 </xsl:template>