From: Ian Walls <[email protected]>

CanBookBeReserved uses the very heavy-weight function GetItemsInfo to simply 
retrieve
the itemnumbers attached to a given biblio.  The function get_itemnumbers_of() 
is much
lighter-weight and returns the required information; switching to it will 
reduce the overall
system resource cost of placing a hold.

Signed-off-by: Nicole C. Engard <[email protected]>
---
 C4/Reserves.pm |   16 +++++++---------
 1 files changed, 7 insertions(+), 9 deletions(-)

diff --git a/C4/Reserves.pm b/C4/Reserves.pm
index f7a2e72..f12c23f 100644
--- a/C4/Reserves.pm
+++ b/C4/Reserves.pm
@@ -383,17 +383,15 @@ sub GetReservesFromBorrowernumber {
 sub CanBookBeReserved{
     my ($borrowernumber, $biblionumber) = @_;
 
-    my @items = GetItemsInfo($biblionumber);
-
-       #get items linked via host records
-       my $marcrecord= GetMarcBiblio($biblionumber);
-       my @hostitemInfos = GetHostItemsInfo($marcrecord);
-       if (@hostitemInfos){
-               push (@items,@hostitemInfos);
-       }
+    my @items = get_itemnumbers_of($biblionumber);
+    #get items linked via host records
+    my @hostitems = get_hostitemnumbers_of($biblionumber);
+    if (@hostitems){
+       push (@items,@hostitems);
+    }
 
     foreach my $item (@items){
-        return 1 if CanItemBeReserved($borrowernumber, $item->{itemnumber});
+        return 1 if CanItemBeReserved($borrowernumber, $item);
     }
     return 0;
 }
-- 
1.7.2.3

_______________________________________________
Koha-patches mailing list
[email protected]
http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-patches
website : http://www.koha-community.org/
git : http://git.koha-community.org/
bugs : http://bugs.koha-community.org/

Reply via email to