[Koha-patches] [PATCH 11/12] (bug #4319) allow reserves on waiting items

Henri-Damien LAURENT henridamien.laurent at biblibre.com
Sat May 1 00:19:53 CEST 2010


This add a function to check the reserve status, and add a check in IsAvailableForItemLevelRequest() to allow request on items that are waiting

Conflicts solved:

	C4/Reserves.pm

Signed-off-by: Henri-Damien LAURENT <henridamien.laurent at biblibre.com>
---
 C4/Reserves.pm |   17 +++++++++++++++--
 1 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/C4/Reserves.pm b/C4/Reserves.pm
index 6328d17..e347295 100644
--- a/C4/Reserves.pm
+++ b/C4/Reserves.pm
@@ -100,7 +100,8 @@ BEGIN {
         &GetReserveCount
         &GetReserveFee
 		&GetReserveInfo
-    
+        &GetReserveStatus
+        
         &GetOtherReserves
         
         &ModReserveFill
@@ -780,6 +781,18 @@ sub GetReservesForBranch {
     return (@transreserv);
 }
 
+sub GetReserveStatus {
+    my ($itemnumber) = @_;
+    
+    my $dbh = C4::Context->dbh;
+    
+    my $itemstatus = $dbh->prepare("SELECT found FROM reserves WHERE itemnumber = ?");
+    
+    $itemstatus->execute($itemnumber);
+    my ($found) = $itemstatus->fetchrow_array;
+    return $found;
+}
+
 =item CheckReserves
 
   ($status, $reserve) = &CheckReserves($itemnumber);
@@ -1415,7 +1428,7 @@ sub IsAvailableForItemLevelRequest {
     if (C4::Context->preference('AllowOnShelfHolds')) {
         return $available_per_item;
     } else {
-        return ($available_per_item and $item->{onloan}); 
+        return ($available_per_item and ($item->{onloan} or GetReserveStatus($itemnumber) eq "W")); 
     }
 }
 
-- 
1.6.3.3




More information about the Koha-patches mailing list