From 021a406f03335db233454907634de71fa202f705 Mon Sep 17 00:00:00 2001
From: Jonathan Druart <jonathan.druart@biblibre.com>
Date: Thu, 3 May 2012 14:58:25 +0200
Subject: [PATCH] Bug 7991: Add itemcallnumber into the serial collection tab

This patch adds a new column containing the itemcallnumber value into
the serial collection tab (opac detail).
  930$a for UNIMARC
  852$h for others
---
 koha-tmpl/opac-tmpl/prog/en/modules/opac-detail.tt |    6 ++++--
 opac/opac-detail.pl                                |   11 ++++++++++-
 2 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/koha-tmpl/opac-tmpl/prog/en/modules/opac-detail.tt b/koha-tmpl/opac-tmpl/prog/en/modules/opac-detail.tt
index a79eca3..76a53d9 100644
--- a/koha-tmpl/opac-tmpl/prog/en/modules/opac-detail.tt
+++ b/koha-tmpl/opac-tmpl/prog/en/modules/opac-detail.tt
@@ -685,8 +685,9 @@ YAHOO.util.Event.onContentReady("furtherm", function () {
     <table id="serialcollectiont">
 	<thead>
 	    <tr>
-		<th id="serial_library">Library</th>
-		<th id="seral_collection">Serial collection</th>
+            <th id="serial_library">Library</th>
+            <th id="serial_collection">Serial collection</th>
+            <th id="serial_itemcallnumber">Item callnumber</th>
 	    </tr>
 	</thead>
 	<tbody>
@@ -694,6 +695,7 @@ YAHOO.util.Event.onContentReady("furtherm", function () {
 	    <tr>
 		<td>[% serialcollection.branch %]</td>
 		<td>[% serialcollection.text %]</td>
+        <td>[% serialcollection.itemcallnumber %]</td>
 	    </tr>
 	[% END %]
 	</tbody>
diff --git a/opac/opac-detail.pl b/opac/opac-detail.pl
index 3e830c9..0284503 100755
--- a/opac/opac-detail.pl
+++ b/opac/opac-detail.pl
@@ -720,6 +720,9 @@ if (C4::Context->preference("OPACFRBRizeEditions")==1) {
 
 # Serial Collection
 my @sc_fields = $record->field(955);
+my @lc_fields = $marcflavour eq 'UNIMARC'
+    ? $record->field(930)
+    : $record->field(852);
 my @serialcollections = ();
 
 foreach my $sc_field (@sc_fields) {
@@ -727,9 +730,15 @@ foreach my $sc_field (@sc_fields) {
 
     $row_data{text}    = $sc_field->subfield('r');
     $row_data{branch}  = $sc_field->subfield('9');
+    foreach my $lc_field (@lc_fields) {
+        $row_data{itemcallnumber} = $marcflavour eq 'UNIMARC'
+            ? $lc_field->subfield('a') # 930$a
+            : $lc_field->subfield('h') # 852$h
+            if ($sc_field->subfield('5') eq $lc_field->subfield('5'));
+    }
 
     if ($row_data{text} && $row_data{branch}) { 
-	push (@serialcollections, \%row_data);
+        push (@serialcollections, \%row_data);
     }
 }
 
-- 
1.7.7.3