Slightly more elegant solution to empty submenus.

svn path=/trunk/; revision=12433
This commit is contained in:
Reinhard Müller 2009-04-02 16:27:40 +00:00
parent ea3069dbb8
commit 09cf227ce8

View File

@ -104,36 +104,28 @@
</xsl:otherwise>
</xsl:choose>
<!-- Submenu -->
<xsl:choose>
<xsl:when test="/buildinfo/menuset/menu[@parent=$id]">
<!--<xsl:element name="ul">-->
<xsl:text disable-output-escaping="yes">&lt;ul&gt;</xsl:text>
</xsl:when>
</xsl:choose>
<xsl:for-each select="/buildinfo/menuset/menu[@parent=$id]">
<xsl:sort select="@id" />
<xsl:variable name="mid"><xsl:value-of select="@id" /></xsl:variable>
<xsl:element name="li">
<xsl:attribute name="class">submenu</xsl:attribute>
<xsl:choose>
<xsl:when test=". = concat(/buildinfo/@filename ,'.html')">
<xsl:value-of select="/buildinfo/textset/text[@id=$mid]"/>
</xsl:when>
<xsl:otherwise>
<xsl:element name="a">
<xsl:attribute name="href"><xsl:value-of select="."/></xsl:attribute>
<xsl:value-of select="/buildinfo/textset/text[@id=$mid]"/>
</xsl:element>
</xsl:otherwise>
</xsl:choose>
</xsl:element>
</xsl:for-each>
<xsl:choose>
<xsl:when test="/buildinfo/menuset/menu[@parent=$id]">
<!--</xsl:element>--> <!-- /submenu ul -->
<xsl:text disable-output-escaping="yes">&lt;/ul&gt;</xsl:text>
</xsl:when>
</xsl:choose>
<xsl:if test="/buildinfo/menuset/menu[@parent=$id]">
<xsl:element name="ul">-->
<xsl:for-each select="/buildinfo/menuset/menu[@parent=$id]">
<xsl:sort select="@id" />
<xsl:variable name="mid"><xsl:value-of select="@id" /></xsl:variable>
<xsl:element name="li">
<xsl:attribute name="class">submenu</xsl:attribute>
<xsl:choose>
<xsl:when test=". = concat(/buildinfo/@filename ,'.html')">
<xsl:value-of select="/buildinfo/textset/text[@id=$mid]"/>
</xsl:when>
<xsl:otherwise>
<xsl:element name="a">
<xsl:attribute name="href"><xsl:value-of select="."/></xsl:attribute>
<xsl:value-of select="/buildinfo/textset/text[@id=$mid]"/>
</xsl:element>
</xsl:otherwise>
</xsl:choose>
</xsl:element>
</xsl:for-each>
</xsl:element>--> <!-- /submenu ul -->
</xsl:if>
</xsl:element> <!-- /li -->
</xsl:for-each>
</xsl:element> <!-- /ul -->