Bug 25444: Simplify the code using a loop
[koha-ffzg.git] / C4 / HoldsQueue.pm
index d55e7e3..5f2c2c5 100755 (executable)
@@ -132,7 +132,12 @@ sub GetHoldsQueueItems {
     my $dbh   = C4::Context->dbh;
 
     my @bind_params = ();
-    my $query = q/SELECT tmp_holdsqueue.*, biblio.author, items.ccode, items.itype, biblioitems.itemtype, items.location, items.enumchron, items.cn_sort, biblioitems.publishercode,biblio.copyrightdate,biblioitems.publicationyear,biblioitems.pages,biblioitems.size,biblioitems.publicationyear,biblioitems.isbn,items.copynumber
+    my $query = q/SELECT tmp_holdsqueue.*, biblio.author, items.ccode, items.itype, biblioitems.itemtype, items.location,
+                         items.enumchron, items.cn_sort, biblioitems.publishercode,
+                         biblio.copyrightdate, biblio.subtitle, biblio.medium,
+                         biblio.part_number, biblio.part_name,
+                         biblioitems.publicationyear, biblioitems.pages, biblioitems.size,
+                         biblioitems.isbn, items.copynumber
                   FROM tmp_holdsqueue
                        JOIN biblio      USING (biblionumber)
                   LEFT JOIN biblioitems USING (biblionumber)
@@ -147,13 +152,6 @@ sub GetHoldsQueueItems {
     $sth->execute(@bind_params);
     my $items = [];
     while ( my $row = $sth->fetchrow_hashref ){
-        my $record = GetMarcBiblio({ biblionumber => $row->{biblionumber} });
-        if ($record){
-            $row->{subtitle} = [ map { $_->{subfield} } @{ GetRecordValue( 'subtitle', $record, '' ) } ];
-            $row->{parts} = GetRecordValue('parts',$record,'')->[0]->{subfield};
-            $row->{numbers} = GetRecordValue('numbers',$record,'')->[0]->{subfield};
-        }
-
         # return the bib-level or item-level itype per syspref
         if (!C4::Context->preference('item-level_itypes')) {
             $row->{itype} = $row->{itemtype};
@@ -402,7 +400,6 @@ sub MapItemsToHoldRequests {
           C4::Context->preference('LocalHoldsPriorityItemControl');
 
         foreach my $request (@$hold_requests) {
-            next if (defined($request->{itemnumber})); #skip item level holds in local priority checking
             last if $num_items_remaining == 0;
 
             my $local_hold_match;