Skip to content
Snippets Groups Projects
header.xsl 2.19 KiB
Newer Older
Michael Becker's avatar
Michael Becker committed
<?xml version="1.0" encoding="UTF-8"?>

Michael Becker's avatar
Michael Becker committed
<xsl:stylesheet version="2.0"
                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:mcrurl="http://www.mycore.de/xslt/url"
                exclude-result-prefixes="#all">

Michael Becker's avatar
Michael Becker committed
  <xsl:template name="header">
    <header id="header">
      <div class="container">
        <nav class="navbar">
          <div class="navbar-logo">
            <a title="Start" href="{$WebApplicationBaseURL}content/index.xed">
Michael Becker's avatar
Michael Becker committed
              <img src="/images/uni_leipzig_logo_v2.svg" alt="Application logo"/>
Michael Becker's avatar
Michael Becker committed
            </a>
          </div>
          <div class="navbar-collapse" id="navbarSupportedContent">
Michael Becker's avatar
Michael Becker committed
            <ul class="header-navigation">
              <xsl:apply-templates select="$loaded_navigation_xml/navi-above-ltr/item[not(@userNot = $CurrentUser)]" mode="navigation"/>
Michael Becker's avatar
Michael Becker committed
            </ul>
            <xsl:call-template name="site-header-language-select"/>
Michael Becker's avatar
Michael Becker committed
          </div>
        </nav>
      </div>
    </header>
  </xsl:template>
Michael Becker's avatar
Michael Becker committed

  <!--
  Creates the HTML list of links for language selection
-->
  <xsl:template name="site-header-language-select">
    <ul class="header-language-select">
      <li>
        <xsl:call-template name="site-header-language">
          <xsl:with-param name="lang" select="'de'"/>
        </xsl:call-template>
      </li>
      <li>
        <xsl:call-template name="site-header-language">
          <xsl:with-param name="lang" select="'en'"/>
        </xsl:call-template>
      </li>
    </ul>
  </xsl:template>

  <!--
  Create an HTML link element for the current URL in a given language, i.e. adds the lang=xx parameter to the URL.

  Parameters
  * lang: the language Parameter for the URL
-->
  <xsl:template name="site-header-language">
    <xsl:param name="lang" as="xs:string"/>

    <a href="{mcrurl:set-param($RequestURL, 'lang', $lang)}">
      <xsl:if test="$CurrentLang = $lang">
        <xsl:attribute name="class">
          <xsl:value-of select="'selected'"/>
        </xsl:attribute>
      </xsl:if>
      <xsl:value-of select="fn:upper-case($lang)"/>
    </a>
  </xsl:template>
Michael Becker's avatar
Michael Becker committed
</xsl:stylesheet>