Bug 8732: Allowing biblio level itemtypes to display instead of MARC ones
[srvgit] / koha-tmpl / opac-tmpl / bootstrap / en / xslt / MARC21slim2OPACResults.xsl
index c403a46..30ae2ba 100644 (file)
                 <xsl:when test="($check008-23 and $controlField008-23='a') or ($check008-29 and $controlField008-29='a')">
                     microfilm
                 </xsl:when>
+                <xsl:when test="($controlField008-23='d' and ($typeOf008='BK' or $typeOf008='CR'))">
+                    large print
+                </xsl:when>
             </xsl:choose>
 <!--
             <xsl:if test="marc:datafield[@tag=130]/marc:subfield[@code='h']">
 
 <xsl:if test="$DisplayOPACiconsXSLT!='0'">
     <span class="results_summary type">
+
     <xsl:if test="$typeOf008!=''">
     <span class="results_material_type">
         <span class="label">Material type: </span>
                    <xsl:when test="$singleBranchMode=1">
                        <xsl:for-each select="$available_items[generate-id() = generate-id(key('item-by-status-and-branch-home', concat(items:status, ' ', items:homebranch))[1])]">
                            <span class="ItemSummary">
-                               <xsl:if test="items:itemcallnumber != '' and items:itemcallnumber">
+                               <xsl:if test="items:itemcallnumber != '' and items:itemcallnumber and $OPACItemLocation='callnum'">
                                    <span class="CallNumberAndLabel">
                                        <span class="LabelCallNumber">Call number: </span>
                                        <span class="CallNumber"><xsl:value-of select="items:itemcallnumber"/></span>
                     <span class="available reference">
                        <span class="AvailabilityLabel"><strong><xsl:text>Items available for reference: </xsl:text></strong></span>
                         <xsl:variable name="reference_items" select="key('item-by-status', 'reference')"/>
-                        <xsl:for-each select="$reference_items[generate-id() = generate-id(key('item-by-status-and-branch-home', concat(items:status, ' ', items:homebranch))[1])]">
-                            <span class="ItemSummary">
+                        <xsl:for-each select="$reference_items[generate-id() = generate-id(key('item-by-substatus-and-branch', concat(items:substatus, ' ', items:homebranch))[1])]">
+                            <span>
+                                <xsl:attribute name="class">
+                                    ItemSummary
+                                    <xsl:value-of select="translate(items:substatus,' ','_')"/>
+                                </xsl:attribute>
                                 <xsl:if test="$singleBranchMode=0">
-                                    <span class="ItemBranch"><xsl:value-of select="items:homebranch"/> </span>
+                                    <span class="ItemBranch"><xsl:value-of select="items:homebranch"/><xsl:text> </xsl:text></span>
                                 </xsl:if>
-                                <xsl:if test="items:itemcallnumber != '' and items:itemcallnumber">
+                                <span class='notforloandesc'><xsl:value-of select="items:substatus"/></span>
+                                <xsl:if test="items:itemcallnumber != '' and items:itemcallnumber and $OPACItemLocation='callnum'">
                                     <span class="CallNumberAndLabel">
                                         <span class="LabelCallNumber">Call number: </span>
                                                            <span class="CallNumber"><xsl:value-of select="items:itemcallnumber"/></span>
                                     </span>
                                 </xsl:if>
                                 <xsl:text> (</xsl:text>
-                                <xsl:value-of select="count(key('item-by-status-and-branch-home', concat(items:status, ' ', items:homebranch)))"/>
+                                <xsl:value-of select="count(key('item-by-substatus-and-branch', concat(items:substatus, ' ', items:homebranch)))"/>
                                 <xsl:text>)</xsl:text>
                                 <xsl:choose><xsl:when test="position()=last()"><xsl:text>. </xsl:text></xsl:when><xsl:otherwise><xsl:text>, </xsl:text></xsl:otherwise></xsl:choose>
                             </span>
                        <xsl:when test="count(key('item-by-status', 'reallynotforloan'))>0">
                           <span class="unavailable">
                               <br />
-                             <xsl:variable name="reference_items" select="key('item-by-status', 'reallynotforloan')"/>
-                             <xsl:for-each select="$reference_items[generate-id() = generate-id(key('item-by-substatus-and-branch', concat(items:substatus, ' ', items:homebranch))[1])]">
-                                <span class="ItemSummary">
+                             <xsl:variable name="unavailable_items" select="key('item-by-status', 'reallynotforloan')"/>
+                             <xsl:for-each select="$unavailable_items[generate-id() = generate-id(key('item-by-substatus-and-branch', concat(items:substatus, ' ', items:homebranch))[1])]">
+                                <span>
+                                    <xsl:attribute name="class">
+                                        ItemSummary
+                                        <xsl:value-of select="translate(items:substatus,' ','_')"/>
+                                    </xsl:attribute>
                                     <xsl:if test="$singleBranchMode=0">
                                            <span class="ItemBranch"><xsl:value-of select="items:homebranch"/><xsl:text> </xsl:text></span>
                                     </xsl:if>
                                       <span class='notforloandesc'><xsl:value-of select="items:substatus"/></span>
-                                      <xsl:if test="items:itemcallnumber != '' and items:itemcallnumber">
+                                      <xsl:if test="items:itemcallnumber != '' and items:itemcallnumber and $OPACItemLocation='callnum'">
                                           <span class="CallNumberAndLabel">
                                               <span class="LabelCallNumber">Call number: </span>
                                                                  <span class="CallNumber"><xsl:value-of select="items:itemcallnumber"/></span>
     <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)">
             <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:when test="count(key('item-by-status', 'available'))>0">
                     <span class="available">
                         <xsl:variable name="available_items" select="key('item-by-status', 'available')"/>
                         <xsl:for-each select="$available_items[generate-id() = generate-id(key('item-by-status-and-branch-home', concat(items:status, ' ', items:homebranch))[1])]">
                             <xsl:choose>
-                                <xsl:when test="$OPACItemLocation='location'"><b><xsl:value-of select="concat(items:location,' ')"/></b></xsl:when>
-                                <xsl:when test="$OPACItemLocation='ccode'"><b><xsl:value-of select="concat(items:ccode,' ')"/></b></xsl:when>
+                                <xsl:when test="$OPACItemLocation='location'"><strong><xsl:value-of select="concat(items:location,' ')"/></strong></xsl:when>
+                                <xsl:when test="$OPACItemLocation='ccode'"><strong><xsl:value-of select="concat(items:ccode,' ')"/></strong></xsl:when>
                             </xsl:choose>
                             <xsl:if test="items:itemcallnumber != '' and items:itemcallnumber">
                                 <span class="CallNumberAndLabel">
                         <xsl:variable name="reference_items" select="key('item-by-status', 'reference')"/>
                         <xsl:for-each select="$reference_items[generate-id() = generate-id(key('item-by-status-and-branch-home', concat(items:status, ' ', items:homebranch))[1])]">
                             <xsl:choose>
-                                <xsl:when test="$OPACItemLocation='location'"><b><xsl:value-of select="concat(items:location,' ')"/></b></xsl:when>
-                                <xsl:when test="$OPACItemLocation='ccode'"><b><xsl:value-of select="concat(items:ccode,' ')"/></b></xsl:when>
+                                <xsl:when test="$OPACItemLocation='location'"><strong><xsl:value-of select="concat(items:location,' ')"/></strong></xsl:when>
+                                <xsl:when test="$OPACItemLocation='ccode'"><strong><xsl:value-of select="concat(items:ccode,' ')"/></strong></xsl:when>
                             </xsl:choose>
                             <xsl:if test="items:itemcallnumber != '' and items:itemcallnumber">
                                 <span class="CallNumberAndLabel">