Bug 27850: Search link for 260 a and c in MARC21 XSLT intranet display

In MARC21 XSLT intranet display, 260$b is a search link on 'Provider'.
$a and $c also have a search field, we can create search links.

Test plan:
1) Create 2 records with same 260 : two $a, one $b, two $c
2) Use XSLT display in staff inteface
2) Look at first record details page in staff interface
3) Click on a $a link => you see both records
4) Click on a $c link => you see both records

Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This commit is contained in:
Fridolin Somers 2021-03-03 14:27:00 +01:00 committed by Jonathan Druart
parent e87f51bd7f
commit 4debc8c514

View file

@ -290,11 +290,15 @@
<xsl:when test="marc:datafield[@tag=260]">
<span class="results_summary publisher"><span class="label">Publication details: </span>
<xsl:for-each select="marc:datafield[@tag=260]">
<xsl:if test="marc:subfield[@code='a']">
<xsl:call-template name="subfieldSelect">
<xsl:with-param name="codes">a</xsl:with-param>
</xsl:call-template>
</xsl:if>
<xsl:for-each select="marc:subfield[@code='a']">
<a>
<xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=pl:"<xsl:value-of select="str:encode-uri(., true())"/>"</xsl:attribute>
<xsl:value-of select="."/>
</a>
<xsl:if test="position() != last()">
<xsl:text> </xsl:text>
</xsl:if>
</xsl:for-each>
<xsl:text> </xsl:text>
<xsl:if test="marc:subfield[@code='b']">
<a>
@ -302,13 +306,23 @@
<xsl:call-template name="subfieldSelect">
<xsl:with-param name="codes">b</xsl:with-param>
</xsl:call-template>
</a>
</xsl:if>
<xsl:text> </xsl:text>
</a>
</xsl:if>
<xsl:text> </xsl:text>
<xsl:for-each select="marc:subfield[@code='c']">
<a>
<xsl:attribute name="href">/cgi-bin/koha/catalogue/search.pl?q=copydate:"<xsl:value-of select="str:encode-uri(., true())"/>"</xsl:attribute>
<xsl:value-of select="."/>
</a>
<xsl:if test="position() != last()">
<xsl:text> </xsl:text>
</xsl:if>
</xsl:for-each>
<xsl:text> </xsl:text>
<xsl:call-template name="chopPunctuation">
<xsl:with-param name="chopString">
<xsl:call-template name="subfieldSelect">
<xsl:with-param name="codes">cg</xsl:with-param>
<xsl:with-param name="codes">g</xsl:with-param>
</xsl:call-template>
</xsl:with-param>
</xsl:call-template>