Bug 24352: Correct location and collection labels in OPAC search results

This patch modifies the OPAC's MARC21 search results XSLT so that
OPAC search result information is correctly labeled
based on the OpacItemLocation preference.

Previously, search results showed the label "Location(s)" whether the
setting was "collection code" or "location."

To test, apply the patch and set the OPACXSLTResultsDisplay system
preference to 'default.'

On the OPAC search results page, each result with items should show
information in this format:

   With the OpacItemLocation preference set to 'call number only,'
    - "Availability: Items available for loan: {library} [Call number:
      {call number} ]

   With the OpacItemLocation preference set to 'collection code,'
     - "Availability: Items available for loan: {library}
        Collection(s): {collection description} [{ call number }]"

   With the OpacItemLocation preference set to 'location,'
     - "Availability: Items available for loan: {library}
        Location(s): {shelving location} [{ call number }]"

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

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This commit is contained in:
Owen Leonard 2020-06-16 19:48:48 +00:00 committed by Jonathan Druart
parent 980419ed15
commit 897948cff5

View file

@ -1429,7 +1429,16 @@
<xsl:choose> <xsl:choose>
<xsl:when test="($OPACItemLocation='location' or $OPACItemLocation='ccode') and (count(key('item-by-status', 'available'))!=0 or count(key('item-by-status', 'reference'))!=0)"> <xsl:when test="($OPACItemLocation='location' or $OPACItemLocation='ccode') and (count(key('item-by-status', 'available'))!=0 or count(key('item-by-status', 'reference'))!=0)">
<span class="results_summary location"> <span class="results_summary location">
<span class="label">Location(s): </span>
<xsl:choose>
<xsl:when test="$OPACItemLocation='location'">
<span class="label">Location(s): </span>
</xsl:when>
<xsl:when test="$OPACItemLocation='ccode'">
<span class="label">Collection(s): </span>
</xsl:when>
</xsl:choose>
<xsl:choose> <xsl:choose>
<xsl:when test="count(key('item-by-status', 'available'))>0"> <xsl:when test="count(key('item-by-status', 'available'))>0">
<span class="available"> <span class="available">