<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE x:stylesheet [
<!ENTITY nav-fields "field[field_name='prev' or field_name='next' or field_name='contents' or field_name='index' or field_name='glossary' or field_name='copyright' or field_name='start' or field_name='chapter' or field_name='section' or field_name='subsection' or field_name='appendix' or field_name='help']/field_body" >
]>
<x:stylesheet xmlns:x="http://www.w3.org/1999/XSL/Transform"
xmlns="http://www.w3.org/1999/xhtml"
xmlns:e="http://exslt.org/common"
xmlns:s="http://exslt.org/strings"
xmlns:wc="http://webcoso.thenautilus.net/"
exclude-result-prefixes="wc e s"
version="1.0"
>
<x:import href="reST.xsl"/>
<x:param name="language" select="'en'"/>
<x:param name="path"/>
<x:param name="filename"/>
<x:variable name="langs-rtf">
<x:choose>
<x:when test="$language = 'it'">
<lang>it</lang>
<lang>en</lang>
</x:when>
<x:when test="$language = 'en'">
<lang>en</lang>
<lang>it</lang>
</x:when>
<x:otherwise>
<lang><x:value-of select="$language"/></lang>
</x:otherwise>
</x:choose>
</x:variable>
<x:variable name="langs" select="e:node-set($langs-rtf)/node()"/>
<x:variable name="link-names-rtf">
<link rel="prev" lang="it">Precendente</link> <link rel="prev" lang="en">Previous</link>
<link rel="next" lang="it">Successivo</link> <link rel="next" lang="en">Next</link>
<link rel="contents" lang="it">Indice</link> <link rel="contents" lang="en">Contents</link>
<link rel="index" lang="it">Indice</link> <link rel="index" lang="en">Index</link>
<link rel="glossary" lang="it">Glossario</link> <link rel="glossary" lang="en">Glossary</link>
<link rel="copyright" lang="it">Copyright</link> <link rel="copyright" lang="en">Copyright</link>
<link rel="start" lang="it">Inizio</link> <link rel="start" lang="en">Start</link>
<link rel="chapter" lang="it">Capitolo</link> <link rel="chapter" lang="en">Chapter</link>
<link rel="section" lang="it">Sezione</link> <link rel="section" lang="en">Section</link>
<link rel="subsection" lang="it">Sotto-sezione</link> <link rel="subsection" lang="en">Subsection</link>
<link rel="appendix" lang="it">Appetdice</link> <link rel="appendix" lang="en">Appendix</link>
<link rel="help" lang="it">Guida</link> <link rel="help" lang="en">Help</link>
</x:variable>
<x:variable name="link-names" select="e:node-set($link-names-rtf)/node()" />
<x:output method="xml" encoding="utf-8"
doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
indent="yes"/>
<x:template match="system_message" />
<x:template match="*[@classes='system-messages']" />
<x:template match="reference">
<x:element name="a">
<x:attribute name="href">
<x:choose>
<x:when test="@refid">
<x:value-of select="concat('#', @refid)" />
</x:when>
<x:when test="@refuri">
<x:value-of select="@refuri"/>
</x:when>
</x:choose>
</x:attribute>
<x:choose>
<x:when test="@refuri and string(.)=string(@refuri)">
<x:apply-templates select="wc:title-for($langs,ancestor::document/@source,@refuri)"/>
</x:when>
<x:otherwise>
<x:apply-templates />
</x:otherwise>
</x:choose>
</x:element>
</x:template>
<x:template match="target[@refid and not(@refuri)]">
<a name="{@refid}"/>
</x:template>
<x:template match="target[@names and not(@refuri)]">
<x:for-each select="s:split(@names,' ')/token">
<a name="{.}"/>
</x:for-each>
</x:template>
<x:template match="/document">
<html xml:lang="{$language}" lang="{$language}">
<head>
<title><x:value-of select="title"/></title>
<link rel="stylesheet" type="text/css" href="/thenautilus.css" />
<x:for-each select="docinfo/field[field_name='css']/field_body/*/list_item|docinfo/field[field_name='css']/field_body/paragraph">
<link rel="stylesheet" type="text/css" href="{normalize-space(.)}" />
</x:for-each>
<x:for-each select="docinfo/field[field_name='inline-css']/field_body">
<style type="text/css">
<x:value-of select="." disable-output-escaping="yes" />
</style>
</x:for-each>
<x:apply-templates select="docinfo" mode="nav-links" />
</head>
<body>
<div id="content">
<h1>
<x:apply-templates select="title/node()"/>
</h1>
<x:apply-templates/>
</div>
<x:apply-templates select="docinfo" mode="tags" />
<x:call-template name="alternate-langs" />
<x:apply-templates select="docinfo" mode="nav-block" />
<div id="dates">
<x:apply-templates select="wc:dates-for($language,$filename,'./')"/>
</div>
</body>
</html>
</x:template>
<x:template match="/wc:dates">
<span id="created">
<x:if test="$language='it'">Creato: </x:if>
<x:if test="$language='en'">Created: </x:if>
<span class="date created"><x:value-of select="wc:creation-date"/></span>
</span>
<x:text> </x:text>
<span id="lastmod">
<x:if test="$language='it'">Ultima modifica: </x:if>
<x:if test="$language='en'">Last change: </x:if>
<span class="date lastmod"><x:value-of select="wc:last-change"/></span>
</span>
</x:template>
<x:template name="alternate-langs">
<x:variable name="me" select="wc:dst-uri-for('.',/document/@source,1)" />
<x:variable name="alts">
<x:for-each select="wc:changes()/wc:changes/wc:document[@uri=$me]">
<x:if test="@lang != $language">
<li><a href="{@lang}"><x:value-of select="@lang"/></a></li>
</x:if>
</x:for-each>
</x:variable>
<x:if test="normalize-space($alts) != ''">
<div id="alt-langs">
<ul>
<x:copy-of select="$alts"/>
</ul>
</div>
</x:if>
</x:template>
<x:template match="/wc:tags">
<dl>
<x:apply-templates/>
</dl>
</x:template>
<x:template match="wc:tag">
<dt>
<span class="tag title">
<a href="{concat('/tags/',@name,'/')}">
<x:apply-templates select="wc:title-for($language,$filename,concat('/tags/',@name,'/'))"/>
</a>
</span>
</dt>
<dd>
<ul>
<x:apply-templates/>
</ul>
</dd>
</x:template>
<x:template match="wc:doc">
<x:value-of select="wc:message('wc:doc',.)"/>
<li>
<a class="tag doc" href="{@uri}"><x:apply-templates select="wc:title-for($language,$filename,@uri)"/></a>
(<span class="tag doc langs"><x:apply-templates/></span>)
</li>
</x:template>
<x:template match="wc:lang">
<x:value-of select="wc:message('wc:lang',.)"/>
<x:choose>
<x:when test=".!=$language">
<a href="{../@uri}{.}" class="lang"><x:value-of select="."/></a>
</x:when>
<x:otherwise>
<span class="lang"><x:value-of select="."/></span>
</x:otherwise>
</x:choose>
<x:if test="following-sibling::wc:lang"> | </x:if>
</x:template>
<x:template match="docinfo" mode="tags">
<x:variable name="tags">
<x:apply-templates select="field" mode="tags"/>
</x:variable>
<x:if test="normalize-space($tags) != ''">
<div id="tags">
<ul>
<x:copy-of select="$tags" />
</ul>
</div>
</x:if>
</x:template>
<x:template match="field[field_name='tags']/field_body/*/list_item|field[field_name='tags']/field_body/paragraph" mode="tags">
<x:variable name="tag-name"><x:value-of select="normalize-space(.)"/></x:variable>
<li>
<span class="tag title">
<a href="{concat('/tags/',$tag-name,'/')}">
<x:apply-templates select="wc:title-for($language,$filename,concat('/tags/',$tag-name,'/'))"/>
</a>
</span>
</li>
</x:template>
<x:template match="field[field_name != 'tags']" mode="tags" priority="-1" />
<x:template match="field_name" mode="tags" priority="-1" />
<x:template match="docinfo" mode="nav-block">
<x:variable name="links">
<x:apply-templates select="field" mode="nav-block"/>
</x:variable>
<x:if test="normalize-space($links) != ''">
<div id="nav-links">
<dl>
<x:copy-of select="$links" />
</dl>
</div>
</x:if>
</x:template>
<x:template match="&nav-fields;" mode="nav-block">
<x:variable name="rel"><x:value-of select="normalize-space(parent::field/field_name)" /></x:variable>
<x:variable name="label">
<x:copy-of select="$link-names[@rel=$rel and @lang=$language]/node()" />
</x:variable>
<dt class="nav-link nav-link-{$rel}">
<x:copy-of select="$label"/><x:text>: </x:text>
</dt>
<dd class="nav-link nav-link-{$rel}">
<a class="nav-link nav-link-{$rel}" href="{normalize-space(.)}">
<x:apply-templates select="wc:title-for($langs,ancestor::document/@source,normalize-space(.))"/>
</a>
</dd>
</x:template>
<x:template match="field/field_name|field/field_body" mode="nav-block" priority="-1" />
<x:template match="&nav-fields;" mode="nav-links">
<x:element name="link">
<x:attribute name="rel"><x:value-of select="normalize-space(parent::field/field_name)"/></x:attribute>
<x:attribute name="href"><x:value-of select="normalize-space(.)"/></x:attribute>
<x:attribute name="title">
<x:value-of select="normalize-space(wc:title-for($langs,ancestor::document/@source,normalize-space(.)))"/>
</x:attribute>
</x:element>
</x:template>
<x:template match="field/field_name|field/field_body" mode="nav-links" priority="-1" />
</x:stylesheet>