Bug 13600: (follow-up) Add separator between different series fields

This patch checks for an upcoming series tag, and adds a separator if one is found

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This commit is contained in:
Nick Clemens 2022-10-24 16:23:12 +00:00 committed by Tomas Cohen Arazi
parent 438e0a527a
commit e9aad988cb

View file

@ -427,7 +427,7 @@
</xsl:if>
<xsl:choose>
<xsl:when test="position()=last()">
<xsl:if test="../marc:datafield[@tag=490][@ind1!=1]">
<xsl:if test="../marc:datafield[@tag=490][@ind1!=1] or ../marc:datafield[(@tag=800 or @tag=810 or @tag=811) and @ind1!='z'] or ../marc:datafield[@tag=830 and @ind1!='z']">
<span class="separator"> | </span>
</xsl:if>
</xsl:when>
@ -452,7 +452,7 @@
</xsl:if>
<xsl:choose>
<xsl:when test="position()=last()">
<xsl:if test="../marc:datafield[@tag=490][@ind1=1]">
<xsl:if test="../marc:datafield[(@tag=800 or @tag=810 or @tag=811) and @ind1!='z'] or ../marc:datafield[@tag=830 and @ind1!='z']">
<span class="separator"> | </span>
</xsl:if>
</xsl:when>
@ -460,6 +460,7 @@
</xsl:choose>
</xsl:for-each>
<!-- 800,810,811,830 always display. -->
<xsl:for-each select="marc:datafield[(@tag=800 or @tag=810 or @tag=811) and @ind1!='z']">
<xsl:choose>
<xsl:when test="$UseControlNumber = '1' and marc:subfield[@code='w']">
@ -499,7 +500,16 @@
<xsl:call-template name="part"/>
<xsl:text> ; </xsl:text>
<xsl:value-of select="marc:subfield[@code='v']" />
<xsl:choose><xsl:when test="position()=last()"><xsl:text></xsl:text></xsl:when><xsl:otherwise><span class="separator"> | </span></xsl:otherwise></xsl:choose>
<xsl:choose>
<xsl:when test="position()=last()">
<xsl:if test="../marc:datafield[@tag=830 and @ind1!='z']">
<span class="separator"> | </span>
</xsl:if>
</xsl:when>
<xsl:otherwise>
<span class="separator"> | </span>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
<xsl:for-each select="marc:datafield[@tag=830 and @ind1!='z']">