libreccm-legacy/ccm-sci-bundle/web/themes/mandalay/user/includes/public-personal-profile/PersonalPublications.xsl

112 lines
4.2 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE stylesheet [<!ENTITY nbsp '&#160;'>]>
<!--
Copyright 2011, Jens Pelzetter
This file is part of Mandalay.
Mandalay is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
Mandalay is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with Mandalay. If not, see <http://www.gnu.org/licenses/>.
-->
<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:bebop="http://www.arsdigita.com/bebop/1.0"
xmlns:nav="http://ccm.redhat.com/navigation"
xmlns:cms="http://www.arsdigita.com/cms/1.0"
xmlns:ppp="http://www.arsdigita.com/PublicPersonalProfile/1.0"
xmlns:mandalay="http://mandalay.quasiweb.de"
exclude-result-prefixes="xsl bebop cms nav"
version="1.0"
>
<xsl:template match="personalPublications">
<xsl:if test="not(../publications/@all)">
<xsl:apply-templates select="availablePublicationGroups"/>
</xsl:if>
<div id="mainBody">
<xsl:apply-templates select="publications"/>
</div>
</xsl:template>
<xsl:template match="availablePublicationGroups">
<xsl:variable name="groupSeparator">
<xsl:call-template name="mandalay:getSetting">
<xsl:with-param name="module" select="'PersonalPublications'"/>
<xsl:with-param name="setting" select="'groupSeparator'"/>
<xsl:with-param name="default" select="' | '"/>
</xsl:call-template>
</xsl:variable>
<div id="sectionList">
<xsl:for-each select="availablePublicationGroup">
<a>
<xsl:choose>
<xsl:when test="../../publications/@all">
<xsl:attribute name="href">#<xsl:value-of select="@name"/></xsl:attribute>
</xsl:when>
<xsl:otherwise>
<xsl:attribute name="href">?group=<xsl:value-of select="@name"/></xsl:attribute>
</xsl:otherwise>
</xsl:choose>
<xsl:attribute name="title">
<xsl:call-template name="mandalay:getStaticText">
<xsl:with-param name="module" select="'PersonalPublications'"/>
<xsl:with-param name="id" select="concat('publicationGroupLinkTitle', @name)"/>
</xsl:call-template><xsl:value-of select="../../../ppp:ownerName"/></xsl:attribute>
<xsl:call-template name="mandalay:getStaticText">
<xsl:with-param name="module" select="'PersonalPublications'"/>
<xsl:with-param name="id" select="concat('publicationGroup', @name)"/>
</xsl:call-template>
</a>
<xsl:if test="position() != last()">
<xsl:value-of select="$groupSeparator"/>
</xsl:if>
</xsl:for-each>
</div>
</xsl:template>
<xsl:template match="publications/publicationGroup">
<div class="activeTab">
<h2 class="sectionHeading">
<xsl:attribute name="id">
<xsl:value-of select="@name"/>
</xsl:attribute>
<xsl:call-template name="mandalay:getStaticText">
<xsl:with-param name="module" select="'PersonalPublications'"/>
<xsl:with-param name="id" select="concat('publicationGroup', @name)"/>
</xsl:call-template>
</h2>
<xsl:apply-templates select="nav:paginator" mode="header"/>
<xsl:apply-templates select="nav:paginator" mode="navbar"/>
<ul class="publicationList">
<xsl:for-each select="publications">
<li class="sciPublication">
<xsl:apply-templates select="." mode="list_view">
<xsl:with-param name="useRelativeUrl" select="'true'"/>
</xsl:apply-templates>
</li>
</xsl:for-each>
<xsl:for-each select="cms:item">
<li>
<xsl:apply-templates select="." mode="list_view">
<xsl:with-param name="useRelativeUrl" select="'true'"/>
</xsl:apply-templates>
</li>
</xsl:for-each>
</ul>
</div>
</xsl:template>
</xsl:stylesheet>