summaryrefslogtreecommitdiff
path: root/utility/master.xsl
diff options
context:
space:
mode:
authorAdrian Kummerlaender2017-02-11 22:22:27 +0100
committerAdrian Kummerlaender2017-02-11 22:22:27 +0100
commit490963c1550efffe046179ced9b39573185e3e1d (patch)
treea5d7ed4bd1dc7408a77dda09b22ae0d332938925 /utility/master.xsl
downloadtree.kummerlaender.eu-490963c1550efffe046179ced9b39573185e3e1d.tar
tree.kummerlaender.eu-490963c1550efffe046179ced9b39573185e3e1d.tar.gz
tree.kummerlaender.eu-490963c1550efffe046179ced9b39573185e3e1d.tar.bz2
tree.kummerlaender.eu-490963c1550efffe046179ced9b39573185e3e1d.tar.lz
tree.kummerlaender.eu-490963c1550efffe046179ced9b39573185e3e1d.tar.xz
tree.kummerlaender.eu-490963c1550efffe046179ced9b39573185e3e1d.tar.zst
tree.kummerlaender.eu-490963c1550efffe046179ced9b39573185e3e1d.zip
Initial implementation of a tree-like website generator based on InputXSLT
The foundation was forked from `blog.kummerlaender.eu`. Currently generates arbitrarily nested markdown documents in addition to overview pages for branches in the tree. This includes resolution of branch node contents.
Diffstat (limited to 'utility/master.xsl')
-rw-r--r--utility/master.xsl76
1 files changed, 76 insertions, 0 deletions
diff --git a/utility/master.xsl b/utility/master.xsl
new file mode 100644
index 0000000..80bfccd
--- /dev/null
+++ b/utility/master.xsl
@@ -0,0 +1,76 @@
+<?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:variable name="root" select="datasource"/>
+
+<xsl:template match="/">
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <meta name="author" content="Adrian Kummerländer" />
+ <meta name="robots" content="all"/>
+ <meta name="viewport" content="width=device-width,initial-scale=1.0"/>
+
+ <link rel="stylesheet" type="text/css" href="/main.css" />
+ <link rel="shortcut icon" type="image/x-icon" href="/media/favicon.ico" />
+
+ <xsl:if test="//*[(self::p or self::span) and @class = 'math']">
+ <link rel="stylesheet" type="text/css" href="https://static.kummerlaender.eu/katex/katex.min.css" />
+ </xsl:if>
+
+ <title>
+ <xsl:call-template name="title-text"/> @ <xsl:value-of select="$root/meta/title"/>
+ </title>
+</head>
+<body>
+ <div id="navigation" class="center border_bottom">
+ <h1>
+ <xsl:value-of select="$root/meta/title"/>
+ </h1>
+
+ <ul class="buttonlist">
+ <li>
+ <a href="/">Start</a>
+ </li>
+ <li>
+ <a href="/projects">Projects</a>
+ </li>
+ <li>
+ <a href="/contact">Contact</a>
+ </li>
+ </ul>
+ </div>
+
+ <div id="content" class="center">
+ <xsl:apply-templates />
+ </div>
+
+ <div id="footer" class="center border_top">
+ <a href="/projects/xslt/static_xslt/">Made with XSLT</a>
+
+ <ul class="buttonlist">
+ <li>
+ <a href="/contact">Contact</a>
+ </li>
+ </ul>
+ </div>
+</body>
+</html>
+</xsl:template>
+
+<xsl:template match="text()|@*"/>
+
+</xsl:stylesheet>