From 69e839e4c20dd4df1f298b5144a62e88a39b1e53 Mon Sep 17 00:00:00 2001
From: Katrin Fischer <katrin.fischer.83@web.de>
Date: Sun, 11 Aug 2019 12:52:18 +0200
Subject: [PATCH] Bug 22884: Show separator between 440 and 490 fields

This adds a ; as separator between 440 and 490 fields used in the
same record. Currently we loop first 440 and then 490. 490 is displayed
depending on the indicator.

So after we finish the first loop, we check for existence of 490 on the
same record now to decide if a separator is needed.

To test:
- Look at various records using one or multiple 440 and 490 fields
- Verify the display is correct, especially when both appar on the
  same record in both OPAC and staff

Signed-off-by: Hayley Mapley <hayleymapley@catalyst.net.nz>

Signed-off-by: Hayley Mapley <hayleymapley@catalyst.net.nz>
---
 .../intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl     | 9 ++++++++-
 koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl  | 9 ++++++++-
 2 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl
index 910ad1f5637..f7a28dda995 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl
+++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl
@@ -207,7 +207,14 @@
                         </xsl:call-template>
             </a>
             <xsl:call-template name="part"/>
-            <xsl:choose><xsl:when test="position()=last()"><xsl:text></xsl:text></xsl:when><xsl:otherwise><xsl:text> ; </xsl:text></xsl:otherwise></xsl:choose>
+            <xsl:choose>
+                <xsl:when test="position()=last()">
+                    <xsl:if test="../marc:datafield[@tag=490][@ind1!=1]">
+                        <xsl:text>; </xsl:text>
+                    </xsl:if>
+                </xsl:when>
+                <xsl:otherwise><xsl:text> ; </xsl:text></xsl:otherwise>
+            </xsl:choose>
         </xsl:for-each>
 
         <!-- 490 Series not traced, Ind1 = 0 -->
diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl
index a542a93823e..d6b872a73b3 100644
--- a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl
+++ b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl
@@ -226,7 +226,14 @@
                         </xsl:call-template>
             </a>
             <xsl:call-template name="part"/>
-            <xsl:choose><xsl:when test="position()=last()"><xsl:text></xsl:text></xsl:when><xsl:otherwise><xsl:text> ; </xsl:text></xsl:otherwise></xsl:choose>
+            <xsl:choose>
+                <xsl:when test="position()=last()">
+                    <xsl:if test="../marc:datafield[@tag=490][@ind1!=1]">
+                        <xsl:text>; </xsl:text>
+                    </xsl:if>
+                </xsl:when>
+                <xsl:otherwise><xsl:text> ; </xsl:text></xsl:otherwise>
+            </xsl:choose>
         </xsl:for-each>
 
         <!-- 490 Series not traced, Ind1 = 0 -->
-- 
2.11.0