# the manual, even if you choose to move your DocumentRoot. You may
# comment this out if you do not care for the documentation.
#
- Alias /manual "@exp_manualdir@"
+ AliasMatch ^/manual(?:/(?:de|en|fr|ja|ko|ru))?(/.*)?$ "@exp_manualdir@$1"
<Directory "@exp_manualdir@">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
+
+ SetEnvIf Request_URI ^/manual/(de|en|fr|ja|ko|ru)/ prefer-language=$1
+ RedirectMatch 301 ^/manual(?:/(de|en|fr|ja|ko|ru)){2,}(/.*)?$ /manual/$1$2
</Directory>
#
# the manual, even if you choose to move your DocumentRoot. You may comment
# this out if you do not care for the documentation.
#
-Alias /manual "@@ServerRoot@@/manual"
+AliasMatch ^/manual(?:/(?:de|en|fr|ja|ko|ru))?(/.*)?$ "@@ServerRoot@@/manual$1"
<Directory "@@ServerRoot@@/manual">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
+
+ SetEnvIf Request_URI ^/manual/(de|en|fr|ja|ko|ru)/ prefer-language=$1
+ RedirectMatch 301 ^/manual(?:/(de|en|fr|ja|ko|ru)){2,}(/.*)?$ /manual/$1$2
</Directory>
#
/* ====================== */
h1 {
padding: 0.2em;
- margin: 0 0 0.5em 0;
+ margin: 0;
border: 1px solid #405871;
background-color: inherit;
color: #036;
line-height: 1.3em;
}
+/* translations */
+/* ====================== */
+.toplang {
+ padding: 0;
+ margin: 0.2em 0.2em 1em 0;
+}
+
+.bottomlang {
+ padding: 0;
+ margin: 0 0.2em 0.2em 0;
+}
+
+.toplang p,
+.bottomlang p {
+ font-size: 13px;
+ text-align: right;
+ background-color: inherit;
+ color: #ccc;
+ margin: 0;
+ padding: 0;
+}
+
+.toplang p span,
+.bottomlang p span {
+ background-color: inherit;
+ color: #036;
+}
+
+.toplang p a:link,
+.toplang p a:visited,
+.bottomlang p a:link,
+.bottomlang p a:visited {
+ text-decoration: none;
+ font-weight: bold;
+}
+
+.toplang p a:hover,
+.toplang p a:active,
+.bottomlang p a:hover,
+.bottomlang p a:active {
+ font-weight: bold;
+}
+
/* page footer */
/* ====================== */
div#footer {
<!-- footer line -->
<message name="maintainedby">Gepflegt durch das</message>
+ <message name="langavail">Available Languages</message>
</messages>
<!-- footer line -->
<message name="maintainedby">Maintained by the</message>
+ <message name="langavail">Available Languages</message>
</messages>
<!-- footer line -->
<message name="maintainedby">Maintained by the</message>
+ <message name="langavail">Available Languages</message>
</messages>
<!-- footer line -->
<message name="maintainedby">ðÏÄÄÅÒÖËÁ ÏÓÕÝÅÓÔ×ÌÑÅÔÓÑ</message>
+ <message name="langavail">Available Languages</message>
</messages>
<!-- page bottom -->
<!-- ==================================================================== -->
<xsl:template name="bottom">
+<xsl:call-template name="langavail">
+ <xsl:with-param name="position" select="'bottom'" />
+</xsl:call-template>
+
<div id="footer">&lf;
<p class="apache">
<xsl:value-of select="$messages/message[@name='maintainedby']"/>
<!-- /bottom -->
+<!-- ==================================================================== -->
+<!-- build an "available languages" section -->
+<!-- ==================================================================== -->
+<xsl:template name="langavail">
+<xsl:param name="position" select="'top'" />
+<xsl:variable name="metafile" select="document(/*/@metafile)/metafile" />
+
+<div class="{$position}lang">&lf;
+ <p>
+ <span>
+ <xsl:value-of select="$messages/message[@name='langavail']" />
+ <xsl:text>: </xsl:text>
+ </span>
+
+ <xsl:for-each select="$metafile/variants/variant">
+ <xsl:sort select="." />
+
+ <a href="{$path}/{.}{$metafile/path}{$metafile/basename}.html">
+ <xsl:if test="$metafile/basename = 'index'">
+ <xsl:attribute name="href">
+ <xsl:value-of
+ select="concat($path, '/', ., $metafile/path)" />
+ </xsl:attribute>
+ </xsl:if>
+
+
+ <xsl:value-of select="." />
+
+ </a>
+ <xsl:if test="position() != last()"> | </xsl:if>
+ </xsl:for-each>
+ </p>&lf;
+</div> <!-- /.{$position}lang -->
+</xsl:template>
+<!-- /langavail -->
+
+
<!-- ==================================================================== -->
<!-- Process a documentation section -->
<!-- ==================================================================== -->
<xsl:value-of select="title" />
</h1>&lf;
+ <xsl:call-template name="langavail" />&lf;
+
<xsl:apply-templates select="summary" />&lf;
<!-- letter bar -->
<div id="preamble">
<h1>
<xsl:value-of select="title" />
- </h1>
+ </h1>&lf;
+
+ <xsl:call-template name="langavail" />&lf;
<xsl:apply-templates select="summary"/>
</div>&lf; <!-- /#preamble -->
<xsl:value-of select="title"/>
</h1>&lf;
+ <xsl:call-template name="langavail" />&lf;
+
<form>
<xsl:call-template name="search.spec" />
</form>&lf;
<div id="preamble">
<h1>
<xsl:value-of select="title"/>
- </h1>
+ </h1>&lf;
- <xsl:apply-templates select="summary"/>
+ <xsl:call-template name="langavail" />&lf;
+
+ <xsl:apply-templates select="summary" />
</div>&lf; <!-- /#preamble -->
<xsl:if test="(not($is-chm) and count(section) > 1) or seealso">
<h1>
<xsl:value-of select="title" />
</h1>&lf;
-
+
+ <xsl:call-template name="langavail" />&lf;
+
<xsl:apply-templates select="summary" />
</div>&lf; <!-- /#preamble -->
<xsl:value-of select="title" />
</h1>&lf;
+ <xsl:call-template name="langavail" />&lf;
+
<xsl:apply-templates select="summary" />
</div>&lf; <!-- /#preamble -->
<xsl:value-of select="title" />
</h1>&lf;
+ <xsl:call-template name="langavail" />&lf;
+
<xsl:apply-templates select="summary" />
</div>&lf; <!-- /#preamble -->
</xsl:choose>
</h1>&lf;
+ <xsl:call-template name="langavail" />&lf;
+
<!-- Description and module-headers -->
<table class="module">
<tr>