View | Details | Raw Unified | Return to bug 21260
Collapse All | Expand All

(-)a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACResults.xsl (-58 / +71 lines)
Lines 19-24 Link Here
19
    </xsl:template>
19
    </xsl:template>
20
    <xsl:template match="marc:record">
20
    <xsl:template match="marc:record">
21
21
22
        <xsl:variable name="itemcount" select="count(items:items/items:item)"/>
23
22
        <!-- Option: Display Alternate Graphic Representation (MARC 880)  -->
24
        <!-- Option: Display Alternate Graphic Representation (MARC 880)  -->
23
        <xsl:variable name="display880" select="boolean(marc:datafield[@tag=880])"/>
25
        <xsl:variable name="display880" select="boolean(marc:datafield[@tag=880])"/>
24
26
Lines 1221-1228 Link Here
1221
        <!-- Availability line -->
1223
        <!-- Availability line -->
1222
        <span class="results_summary availability">
1224
        <span class="results_summary availability">
1223
            <span class="label">Availability: </span>
1225
            <span class="label">Availability: </span>
1226
            <xsl:variable name="sumAv" select="count(key('item-by-status', 'available'))"/>
1227
            <xsl:variable name="sumRef" select="count(key('item-by-status', 'reference'))"/>
1228
1224
            <xsl:choose>
1229
            <xsl:choose>
1225
                <xsl:when test="count(key('item-by-status', 'available'))=0 and count(key('item-by-status', 'reference'))=0 and count(key('item-by-status', 'reallynotforloan'))=0">
1230
                <xsl:when test="$itemcount=0">
1226
                        <xsl:choose>
1231
                        <xsl:choose>
1227
                            <xsl:when test="string-length($AlternateHoldingsField)=3 and marc:datafield[@tag=$AlternateHoldingsField]">
1232
                            <xsl:when test="string-length($AlternateHoldingsField)=3 and marc:datafield[@tag=$AlternateHoldingsField]">
1228
                            <xsl:variable name="AlternateHoldingsCount" select="count(marc:datafield[@tag=$AlternateHoldingsField])"/>
1233
                            <xsl:variable name="AlternateHoldingsCount" select="count(marc:datafield[@tag=$AlternateHoldingsField])"/>
Lines 1237-1243 Link Here
1237
                            <xsl:otherwise><span class="noitems">No items available.</span> </xsl:otherwise>
1242
                            <xsl:otherwise><span class="noitems">No items available.</span> </xsl:otherwise>
1238
                        </xsl:choose>
1243
                        </xsl:choose>
1239
                </xsl:when>
1244
                </xsl:when>
1240
                <xsl:when test="count(key('item-by-status', 'available'))>0">
1245
                <xsl:when test="$sumAv>0">
1241
                   <span class="available reallyavailable">
1246
                   <span class="available reallyavailable">
1242
                       <span class="AvailabilityLabel"><strong><xsl:text>Items available for loan: </xsl:text></strong></span>
1247
                       <span class="AvailabilityLabel"><strong><xsl:text>Items available for loan: </xsl:text></strong></span>
1243
                       <xsl:variable name="available_items"
1248
                       <xsl:variable name="available_items"
Lines 1312-1318 Link Here
1312
            </xsl:choose>
1317
            </xsl:choose>
1313
1318
1314
            <xsl:choose>
1319
            <xsl:choose>
1315
                <xsl:when test="count(key('item-by-status', 'reference'))>0">
1320
                <xsl:when test="$sumRef>0">
1316
                    <span class="available reference">
1321
                    <span class="available reference">
1317
                       <span class="AvailabilityLabel"><strong><xsl:text>Items available for reference: </xsl:text></strong></span>
1322
                       <span class="AvailabilityLabel"><strong><xsl:text>Items available for reference: </xsl:text></strong></span>
1318
                        <xsl:variable name="reference_items" select="key('item-by-status', 'reference')"/>
1323
                        <xsl:variable name="reference_items" select="key('item-by-status', 'reference')"/>
Lines 1343-1360 Link Here
1343
            </xsl:choose>
1348
            </xsl:choose>
1344
1349
1345
            <xsl:choose>
1350
            <xsl:choose>
1346
                <xsl:when test="count(key('item-by-status', 'reallynotforloan'))>0">
1351
                <xsl:when test="number($sumAv+$sumRef) &lt; number($itemcount)">
1347
                          <span class="unavailable">
1352
                    <span class="unavailable">
1348
                             <span class="AvailabilityLabel"><strong><xsl:text>Not available: </xsl:text></strong></span>
1353
                        <span class="AvailabilityLabel"><strong><xsl:text>Not available: </xsl:text></strong></span>
1349
                             <xsl:variable name="unavailable_items" select="key('item-by-status', 'reallynotforloan')"/>
1354
1350
                             <xsl:for-each select="$unavailable_items[generate-id() = generate-id(key('item-by-substatus-and-branch', concat(items:substatus, ' ', items:homebranch))[1])]">
1355
                        <!-- First the remaining not for loan categories -->
1351
                                <span>
1356
                        <xsl:variable name="unavailable_items" select="key('item-by-status', 'reallynotforloan')"/>
1357
                        <xsl:for-each select="$unavailable_items[generate-id() = generate-id(key('item-by-substatus-and-branch', concat(items:substatus, ' ', items:homebranch))[1])]">
1358
                            <span>
1352
                                    <xsl:attribute name="class">
1359
                                    <xsl:attribute name="class">
1353
                                        ItemSummary
1360
                                        ItemSummary
1354
                                        <xsl:value-of select="translate(items:substatus,' ','_')"/>
1361
                                        <xsl:value-of select="translate(items:substatus,' ','_')"/>
1355
                                    </xsl:attribute>
1362
                                    </xsl:attribute>
1356
                                    <xsl:if test="$singleBranchMode=0">
1363
                                    <xsl:if test="$singleBranchMode=0">
1357
					    <span class="ItemBranch"><xsl:value-of select="items:homebranch"/><xsl:text> </xsl:text></span>
1364
                                        <span class="ItemBranch"><xsl:value-of select="items:homebranch"/><xsl:text> </xsl:text></span>
1358
                                    </xsl:if>
1365
                                    </xsl:if>
1359
                                      <span class='notforloandesc'><xsl:value-of select="items:substatus"/></span>
1366
                                      <span class='notforloandesc'><xsl:value-of select="items:substatus"/></span>
1360
                                      <xsl:if test="items:itemcallnumber != '' and items:itemcallnumber and $OPACItemLocation='callnum'">
1367
                                      <xsl:if test="items:itemcallnumber != '' and items:itemcallnumber and $OPACItemLocation='callnum'">
Lines 1367-1421 Link Here
1367
                                      <xsl:value-of select="count(key('item-by-substatus-and-branch', concat(items:substatus, ' ', items:homebranch)))"/>
1374
                                      <xsl:value-of select="count(key('item-by-substatus-and-branch', concat(items:substatus, ' ', items:homebranch)))"/>
1368
                                      <xsl:text>)</xsl:text>
1375
                                      <xsl:text>)</xsl:text>
1369
                                      <xsl:choose><xsl:when test="position()=last()"><xsl:text>. </xsl:text></xsl:when><xsl:otherwise><xsl:text>, </xsl:text></xsl:otherwise></xsl:choose>
1376
                                      <xsl:choose><xsl:when test="position()=last()"><xsl:text>. </xsl:text></xsl:when><xsl:otherwise><xsl:text>, </xsl:text></xsl:otherwise></xsl:choose>
1370
                                  </span>
1377
                            </span>
1371
                              </xsl:for-each>
1378
                        </xsl:for-each>
1372
                           </span>
1379
1380
                        <!-- Followed by other statuses -->
1381
                        <xsl:if test="count(key('item-by-status', 'Checked out'))>0">
1382
                            <span class="unavailable">
1383
                                <xsl:text>Checked out (</xsl:text>
1384
                                <xsl:value-of select="count(key('item-by-status', 'Checked out'))"/>
1385
                                <xsl:text>). </xsl:text>
1386
                            </span>
1387
                        </xsl:if>
1388
                        <xsl:if test="count(key('item-by-status', 'Withdrawn'))>0">
1389
                            <span class="unavailable">
1390
                                <xsl:text>Withdrawn (</xsl:text>
1391
                                <xsl:value-of select="count(key('item-by-status', 'Withdrawn'))"/>
1392
                                <xsl:text>). </xsl:text>
1393
                            </span>
1394
                        </xsl:if>
1395
                        <xsl:if test="$hidelostitems='0' and count(key('item-by-status', 'Lost'))>0">
1396
                            <span class="unavailable">
1397
                                <xsl:text>Lost (</xsl:text>
1398
                                <xsl:value-of select="count(key('item-by-status', 'Lost'))"/>
1399
                                <xsl:text>). </xsl:text>
1400
                            </span>
1401
                        </xsl:if>
1402
                        <xsl:if test="count(key('item-by-status', 'Damaged'))>0">
1403
                            <span class="unavailable">
1404
                                <xsl:text>Damaged (</xsl:text>
1405
                                <xsl:value-of select="count(key('item-by-status', 'Damaged'))"/>
1406
                                <xsl:text>). </xsl:text>
1407
                            </span>
1408
                        </xsl:if>
1409
                        <xsl:if test="count(key('item-by-status', 'Pending hold'))>0">
1410
                            <span class="unavailable">
1411
                                <xsl:text>Pending hold (</xsl:text>
1412
                                <xsl:value-of select="count(key('item-by-status', 'Pending hold'))"/>
1413
                                <xsl:text>). </xsl:text>
1414
                            </span>
1415
                        </xsl:if>
1416
                        <xsl:if test="count(key('item-by-status', 'In transit'))>0">
1417
                            <span class="unavailable">
1418
                                <xsl:text>In transit (</xsl:text>
1419
                                <xsl:value-of select="count(key('item-by-status', 'In transit'))"/>
1420
                                <xsl:text>). </xsl:text>
1421
                            </span>
1422
                        </xsl:if>
1423
                        <xsl:if test="count(key('item-by-status', 'Waiting'))>0">
1424
                            <span class="unavailable">
1425
                                <xsl:text>On hold (</xsl:text>
1426
                                <xsl:value-of select="count(key('item-by-status', 'Waiting'))"/>
1427
                                <xsl:text>). </xsl:text>
1428
                            </span>
1429
                        </xsl:if>
1430
                    </span>
1373
                </xsl:when>
1431
                </xsl:when>
1374
            </xsl:choose>
1432
            </xsl:choose>
1375
1376
            <xsl:if test="count(key('item-by-status', 'Checked out'))>0">
1377
                   <span class="unavailable">
1378
                       <xsl:text>Checked out (</xsl:text>
1379
                       <xsl:value-of select="count(key('item-by-status', 'Checked out'))"/>
1380
                       <xsl:text>). </xsl:text>
1381
				   </span>
1382
            </xsl:if>
1383
            <xsl:if test="count(key('item-by-status', 'Withdrawn'))>0">
1384
                   <span class="unavailable">
1385
                       <xsl:text>Withdrawn (</xsl:text>
1386
                       <xsl:value-of select="count(key('item-by-status', 'Withdrawn'))"/>
1387
                       <xsl:text>). </xsl:text>                   </span>
1388
            </xsl:if>
1389
            <xsl:if test="$hidelostitems='0' and count(key('item-by-status', 'Lost'))>0">
1390
                   <span class="unavailable">
1391
                       <xsl:text>Lost (</xsl:text>
1392
                       <xsl:value-of select="count(key('item-by-status', 'Lost'))"/>
1393
                       <xsl:text>). </xsl:text>                   </span>
1394
            </xsl:if>
1395
            <xsl:if test="count(key('item-by-status', 'Damaged'))>0">
1396
                   <span class="unavailable">
1397
                       <xsl:text>Damaged (</xsl:text>
1398
                       <xsl:value-of select="count(key('item-by-status', 'Damaged'))"/>
1399
                       <xsl:text>). </xsl:text>                   </span>
1400
            </xsl:if>
1401
            <xsl:if test="count(key('item-by-status', 'Pending hold'))>0">
1402
                   <span class="unavailable">
1403
                       <xsl:text>Pending hold (</xsl:text>
1404
                       <xsl:value-of select="count(key('item-by-status', 'Pending hold'))"/>
1405
                       <xsl:text>). </xsl:text>                   </span>
1406
            </xsl:if>
1407
            <xsl:if test="count(key('item-by-status', 'In transit'))>0">
1408
                   <span class="unavailable">
1409
                       <xsl:text>In transit (</xsl:text>
1410
                       <xsl:value-of select="count(key('item-by-status', 'In transit'))"/>
1411
                       <xsl:text>). </xsl:text>                   </span>
1412
            </xsl:if>
1413
            <xsl:if test="count(key('item-by-status', 'Waiting'))>0">
1414
                   <span class="unavailable">
1415
                       <xsl:text>On hold (</xsl:text>
1416
                       <xsl:value-of select="count(key('item-by-status', 'Waiting'))"/>
1417
                       <xsl:text>). </xsl:text>                   </span>
1418
            </xsl:if>
1419
        </span>
1433
        </span>
1420
        <!-- End of Availability line -->
1434
        <!-- End of Availability line -->
1421
1435
1422
- 

Return to bug 21260