Bug 31308: Remove GetItemsInfo from basket/basket
authorJonathan Druart <jonathan.druart@bugs.koha-community.org>
Thu, 2 Jun 2022 09:31:38 +0000 (11:31 +0200)
committerTomas Cohen Arazi <tomascohen@theke.io>
Tue, 16 Aug 2022 12:16:33 +0000 (09:16 -0300)
Bug 27272 is going to remove C4::Items::GetItemsInfo in favour of
Koha::Items->search_ordered.

Here we are going to deal with basket/basket.pl

Test plan:
List items on the modified view and confirm that all the info is
displayed correctly

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
basket/basket.pl
koha-tmpl/intranet-tmpl/prog/en/modules/basket/basket.tt

index fc69f51..7aeed4d 100755 (executable)
@@ -24,7 +24,6 @@ use C4::Biblio qw(
     GetMarcSubjects
     GetMarcUrls
 );
-use C4::Items qw( GetItemsInfo );
 use C4::Auth qw( get_template_and_user );
 use C4::Output qw( output_html_with_http_headers );
 
@@ -72,26 +71,17 @@ foreach my $biblionumber ( @bibs ) {
     my $marcsubjctsarray = GetMarcSubjects( $record, $marcflavour );
     my $marcseriesarray  = GetMarcSeries  ($record,$marcflavour);
     my $marcurlsarray    = GetMarcUrls    ($record,$marcflavour);
-    my @items            = GetItemsInfo( $biblionumber );
 
     my $hasauthors = 0;
     if($dat->{'author'} || @$marcauthorsarray) {
       $hasauthors = 1;
     }
-       
-    my $shelflocations =
-      { map { $_->{authorised_value} => $_->{lib} } Koha::AuthorisedValues->get_descriptions_by_koha_field( { frameworkcode => $dat->{frameworkcode}, kohafield => 'items.location' } ) };
-
-       for my $itm (@items) {
-           if ($itm->{'location'}){
-           $itm->{'location_description'} = $shelflocations->{$itm->{'location'} };
-               }
-       }
-       # COinS format FIXME: for books Only
-        my $fmt = substr $record->leader(), 6,2;
-        my $fmts;
-        $fmts->{'am'} = 'book';
-        $dat->{ocoins_format} = $fmts->{$fmt};
+
+    # COinS format FIXME: for books Only
+    my $fmt = substr $record->leader(), 6,2;
+    my $fmts;
+    $fmts->{'am'} = 'book';
+    $dat->{ocoins_format} = $fmts->{$fmt};
 
     if ( $num % 2 == 1 ) {
         $dat->{'even'} = 1;
@@ -99,7 +89,7 @@ foreach my $biblionumber ( @bibs ) {
 
     $num++;
     $dat->{biblionumber} = $biblionumber;
-    $dat->{ITEM_RESULTS}   = \@items;
+    $dat->{ITEM_RESULTS}   = $biblio->items->search_ordered;
     $dat->{MARCNOTES}      = $marcnotesarray;
     $dat->{MARCSUBJCTS}    = $marcsubjctsarray;
     $dat->{MARCAUTHORS}    = $marcauthorsarray;
index 5c62dad..86cce45 100644 (file)
@@ -1,5 +1,7 @@
 [% USE raw %]
 [% USE Asset %]
+[% USE AuthorisedValues %]
+[% USE Branches %]
 [% SET footerjs = 1 %]
 [% BLOCK controls %]
     <p class="cart-controls">
                                     <tr>
                                         <th scope="row">Location(s)</th>
                                         <td>
-                                            [% IF ( BIBLIO_RESULT.ITEM_RESULTS ) %]
+                                            [% IF BIBLIO_RESULT.ITEM_RESULTS %]
                                                 [% FOREACH ITEM_RESULT IN BIBLIO_RESULT.ITEM_RESULTS %]
                                                     <p>
-                                                        [% ITEM_RESULT.branchname | html %]
-                                                        <span class="shelvingloc">[% ITEM_RESULT.location_description | html %]</span>
+                                                        [% Branches.GetName(ITEM_RESULT.holdingbranch) | html %]
+                                                        <span class="shelvingloc">
+                                                            [% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.location', authorised_value => ITEM_RESULT.location ) | html %]
+                                                        </span>
                                                         [% IF ( ITEM_RESULT.itemcallnumber ) %]
                                                             ([% ITEM_RESULT.itemcallnumber | html %])
                                                         [% END %]
                                                             <strong>
                                                                 <span class="callnumber">[% ITEM_RESULT.itemcallnumber | html %]</span>
                                                             </strong>
-                                                            [% ITEM_RESULT.branchname | html %]
-                                                            <span class="shelvingloc">[% ITEM_RESULT.location_description | html %]</span>
+                                                            [% Branches.GetName(ITEM_RESULT.holdingbranch) | html %]
+                                                            <span class="shelvingloc">
+                                                                [% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.location', authorised_value => ITEM_RESULT.location ) | html %]
+                                                            </span>
                                                         </span>
                                                     </div>
                                                 [% END %]