From 63a8c67eade37913c72f190463412f0ef647a1f4 Mon Sep 17 00:00:00 2001
From: Andreas Roussos <a.roussos@dataly.gr>
Date: Mon, 17 Aug 2020 10:57:03 +0200
Subject: [PATCH] Bug 26223: include item information in OPAC ISBD view

The ISBD view in the OPAC interface does not display item information.

This patch fixes that.

Test plan:
0) Have a biblio with at least one item attached to it and include one
   of the following snippets in the OPACISBD system preference,
   depending on your MARC flavour:

   MARC21:
   #952|<br/><h2>Items</h2><table><th>Copy number</th><th>Shelving
   location</th><th>Koha item type</th><th>Barcode</th><th>Call number
   (Full call number)</th><th>Materials specified (bound volume or
   other part)</th>|<tr><td>{952t} </td><td> {952c} </td><td> {952y}
   </td><td> {952p} </td><td> {952o} </td><td> {9523}</td></tr>|</table>

   UNIMARC:
   #995|<br/><h2>Items</h2><table><th>Copy number</th><th>Shelving
   location</th><th>Koha collection</th><th>Barcode</th><th>Call number
   (Full call number)</th><th>Numbering (volume or other part)</th>|
   <tr><td>{9956} </td><td> {995e} </td><td> {995h} </td><td> {995f}
   </td><td> {995k} </td><td> {995l}</td></tr>|</table>

   Switch to the OPAC ISBD view for your biblio; notice how it does
   not display item information.
1) Apply the patch, and restart Plack/memcached if necessary.
2) Refresh the OPAC ISBD view page, this time you should see item
   information as per the OPACISBD system preference setting.

Signed-off-by: Ivan Dziuba <ivan.dziuba@inlibro.com>
---
 opac/opac-ISBDdetail.pl | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/opac/opac-ISBDdetail.pl b/opac/opac-ISBDdetail.pl
index cc4b5b8d1a..5c854a6279 100755
--- a/opac/opac-ISBDdetail.pl
+++ b/opac/opac-ISBDdetail.pl
@@ -95,13 +95,15 @@ unless ( $patron and $patron->category->override_hidden_items ) {
 }
 
 my $record      = $biblio->metadata->record;
+my @items = grep { !$_->hidden_in_opac({ rules => $opachiddenitems_rules }) } @{$biblio->items->as_list} ;
 my $marcflavour = C4::Context->preference("marcflavour");
 
 my $record_processor = Koha::RecordProcessor->new({
-    filters => 'ViewPolicy',
+    filters => [ 'ViewPolicy', 'EmbedItems' ],
     options => {
         interface => 'opac',
-        frameworkcode => $biblio->frameworkcode
+        frameworkcode => $biblio->frameworkcode,
+        items => \@items
     }
 });
 $record_processor->process($record);
-- 
2.17.1