From 98c75be7eee3e2eac357e5a4df36c40ec8af4987 Mon Sep 17 00:00:00 2001
From: Christopher Brannon <cbrannon@cdalibrary.org>
Date: Fri, 7 Apr 2017 20:25:52 +0000
Subject: [PATCH] Bug 18355: Modifies location on detail pages.

---
 catalogue/detail.pl | 4 +++-
 opac/opac-detail.pl | 7 +++++--
 2 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/catalogue/detail.pl b/catalogue/detail.pl
index 3043661..13fe4dd 100755
--- a/catalogue/detail.pl
+++ b/catalogue/detail.pl
@@ -242,7 +242,9 @@ foreach my $item (@items) {
     #get shelf location and collection code description if they are authorised value.
     # same thing for copy number
     my $shelfcode = $item->{'location'};
-    $item->{'location'} = $shelflocations->{$shelfcode} if ( defined( $shelfcode ) && defined($shelflocations) && exists( $shelflocations->{$shelfcode} ) );
+    my $permshelfcode = $item->{'permanent_location'};
+    $item->{'location'} = $shelflocations->{$permshelfcode} if ( defined( $permshelfcode ) && defined($shelflocations) && exists( $shelflocations->{$permshelfcode} ) );
+    $item->{'location'} .= ' (' . $shelflocations->{$shelfcode} . ')' if ( defined( $shelfcode ) && defined($shelflocations) && exists($shelflocations->{$shelfcode} ) && ($shelfcode ne $permshelfcode) );
     my $ccode = $item->{'ccode'};
     $item->{'ccode'} = $collections->{$ccode} if ( defined( $ccode ) && defined($collections) && exists( $collections->{$ccode} ) );
     my $copynumber = $item->{'copynumber'};
diff --git a/opac/opac-detail.pl b/opac/opac-detail.pl
index 1336ae1..212ecec 100755
--- a/opac/opac-detail.pl
+++ b/opac/opac-detail.pl
@@ -666,8 +666,11 @@ if ( not $viewallitems and @items > $max_items_to_display ) {
     $itm->{'ccode'} = $collections->{$ccode} if defined($ccode) && $collections && exists( $collections->{$ccode} );
     my $copynumber = $itm->{'copynumber'};
     $itm->{'copynumber'} = $copynumbers->{$copynumber} if ( defined($copynumbers) && defined($copynumber) && exists( $copynumbers->{$copynumber} ) );
-    if ( defined $itm->{'location'} ) {
-        $itm->{'location_description'} = $shelflocations->{ $itm->{'location'} };
+    if ( defined $itm->{'permanent_location'} ) {
+        $itm->{'location_description'} = $shelflocations->{ $itm->{'permanent_location'} };
+    }
+    if ( ( defined $itm->{'location'} ) && ( $itm->{'location'} ne $itm->{'permanent_location'} ) ) {
+        $itm->{'location_description'} .= ' (' . $shelflocations->{ $itm->{'location'} } . ')';
     }
     if (exists $itm->{itype} && defined($itm->{itype}) && exists $itemtypes->{ $itm->{itype} }) {
         $itm->{'imageurl'}    = getitemtypeimagelocation( 'opac', $itemtypes->{ $itm->{itype} }->{'imageurl'} );
-- 
2.1.4