aboutsummaryrefslogtreecommitdiff
path: root/source/99_result/overview.xsl
diff options
context:
space:
mode:
Diffstat (limited to 'source/99_result/overview.xsl')
-rw-r--r--source/99_result/overview.xsl103
1 files changed, 103 insertions, 0 deletions
diff --git a/source/99_result/overview.xsl b/source/99_result/overview.xsl
new file mode 100644
index 0000000..215fea0
--- /dev/null
+++ b/source/99_result/overview.xsl
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet
+ version="1.0"
+ xmlns="http://www.w3.org/1999/xhtml"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+>
+
+<xsl:output
+ method="xml"
+ doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
+ doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
+ omit-xml-declaration="yes"
+ encoding="UTF-8"
+ indent="no"
+/>
+
+<xsl:include href="[utility/xhtml.xsl]"/>
+<xsl:include href="[utility/date-time.xsl]"/>
+
+<xsl:variable name="meta">
+ <datasource type="main" mode="full" source="03_merge/timeline.xml" target="timeline"/>
+ <datasource type="support" mode="full" source="02_augment/commits.xml" target="repositories"/>
+ <datasource type="support" mode="full" source="00_content/meta.xml" target="meta"/>
+ <target mode="plain" value="index.html"/>
+</xsl:variable>
+
+<xsl:variable name="root" select="/datasource"/>
+
+<xsl:template name="get_commit">
+ <xsl:param name="repository"/>
+ <xsl:param name="hash"/>
+
+ <xsl:variable name="commit" select="$root/repositories/entry[
+ @handle = $repository
+ ]/commit[
+ @hash = $hash
+ ]"/>
+
+ <h3>
+ <xsl:text>» </xsl:text>
+ <a href="{$commit/link}">
+ <xsl:value-of select="$commit/title"/>
+ </a>
+ </h3>
+
+ <span class="info">
+ <xsl:call-template name="format-date">
+ <xsl:with-param name="date" select="$commit/date"/>
+ <xsl:with-param name="format" select="'M x, Y'"/>
+ </xsl:call-template>
+ <xsl:text> at </xsl:text>
+ <xsl:value-of select="$commit/date/@time"/>
+ <xsl:text> | </xsl:text>
+ <xsl:value-of select="$repository"/>
+ <xsl:text> | </xsl:text>
+ <a href="{$commit/link}">
+ <xsl:value-of select="$commit/@hash"/>
+ </a>
+ </span>
+
+ <xsl:apply-templates select="$commit/message/*" mode="xhtml"/>
+</xsl:template>
+
+<xsl:template match="timeline/commit">
+ <xsl:call-template name="get_commit">
+ <xsl:with-param name="repository" select="@repository"/>
+ <xsl:with-param name="hash" select="@hash"/>
+ </xsl:call-template>
+</xsl:template>
+
+<xsl:template match="datasource">
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+
+ <title>
+ <xsl:value-of select="$root/meta/title"/>
+ </title>
+
+ <link rel="stylesheet" type="text/css" href="/main.css" />
+</head>
+<body>
+ <div id="content">
+ <h1>
+ <xsl:value-of select="$root/meta/title"/>
+ </h1>
+
+ <h2>» <span>
+ <a href="{$root/meta/url}/timeline.xml">
+ <xsl:text>Latest commits</xsl:text>
+ </a>
+ </span>
+ </h2>
+
+ <xsl:apply-templates select="timeline/commit[position() &lt;= 5]"/>
+ </div>
+</body>
+</html>
+</xsl:template>
+
+<xsl:template match="text()|@*"/>
+
+</xsl:stylesheet>