Bug 8656 Calendar needs to load both exception and nonexception dates
[koha.git] / catalogue / moredetail.pl
index 9d5465b..3eee676 100755 (executable)
@@ -28,7 +28,7 @@ use C4::Items;
 use C4::Branch;
 use C4::Acquisition;
 use C4::Bookseller qw(GetBookSellerFromId);
-use C4::Output;             # contains gettemplate
+use C4::Output;
 use C4::Auth;
 use C4::Serials;
 use C4::Circulation;  # to use itemissues
@@ -62,6 +62,8 @@ if($query->cookie("holdfor")){
     );
 }
 
+my $hidepatronname = C4::Context->preference("HidePatronName");
+
 # get variables
 
 my $biblionumber=$query->param('biblionumber');
@@ -117,6 +119,7 @@ $data->{'showncount'}=$showncount;
 $data->{'hiddencount'}=$hiddencount;  # can be zero
 
 my $ccodes= GetKohaAuthorisedValues('items.ccode',$fw);
+my $copynumbers = GetKohaAuthorisedValues('items.copynumber',$fw);
 my $itemtypes = GetItemTypes;
 
 $data->{'itemtypename'} = $itemtypes->{$data->{'itemtype'}}->{'description'};
@@ -132,7 +135,15 @@ foreach my $item (@items){
     $item->{'collection'}              = $ccodes->{ $item->{ccode} } if ($ccodes);
     $item->{'itype'}                   = $itemtypes->{ $item->{'itype'} }->{'description'};
     $item->{'replacementprice'}        = sprintf( "%.2f", $item->{'replacementprice'} );
-    $item->{'copyvol'}                 = $item->{'copynumber'};
+    if ( defined $item->{'copynumber'} ) {
+        $item->{'displaycopy'} = 1;
+        if ( defined $copynumbers->{ $item->{'copynumber'} } ) {
+            $item->{'copyvol'} = $copynumbers->{ $item->{'copynumber'} }
+        }
+        else {
+            $item->{'copyvol'} = $item->{'copynumber'};
+        }
+    }
 
     # item has a host number if its biblio number does not match the current bib
     if ($item->{biblionumber} ne $biblionumber){
@@ -172,6 +183,15 @@ foreach my $item (@items){
     } else {
         $item->{'issue'}= 0;
     }
+
+    unless ($hidepatronname) {
+        if ( $item->{'borrowernumber'} ) {
+            my $curr_borrower = GetMember('borrowernumber' => $item->{'borrowernumber'} );
+            $item->{borrowerfirstname} = $curr_borrower->{'firstname'};
+            $item->{borrowersurname} = $curr_borrower->{'surname'};
+        }
+    }
+
 }
 $template->param(count => $data->{'count'},
        subscriptionsnumber => $subscriptionsnumber,
@@ -188,6 +208,7 @@ $template->param(
     itemnumber          => $itemnumber,
     z3950_search_params => C4::Search::z3950_search_args(GetBiblioData($biblionumber)),
     subtitle            => $subtitle,
+    hidepatronname      => $hidepatronname,
 );
 $template->param(ONLY_ONE => 1) if ( $itemnumber && $showncount != @items );