[Koha-patches] [PATCH] [SIGNED OFF] Bug 5834: Holds link missing when 942$c is not for loan

Jared Camins-Esakov jcamins at bywatersolutions.com
Sat Mar 19 22:14:33 CET 2011


From: Katrin Fischer <Katrin.Fischer.83 at web.de>

Adds a check for item-level_itypes system preference. Note that this only
applies to the search results screens.

To test:
1) Set item-level_itypes to 'specific item'
2) Create record and set 942$c to an itype that is marked not for loan
3) Create item with itype not marked 'not for loan'
Current behaviour: Holds link is not shown, sys pref setting doesn't matter

After patch: Holds link is shown
- when item-level_itype is 'specific item'
- when item-level_itype is 'biblio record' and 942$c itype is for loan

Holds link is not shown
- when item-level_itype is 'biblio record' and 942$c is not for loan

Signed-off-by: Jared Camins-Esakov <jcamins at bywatersolutions.com>
---
 C4/Search.pm |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/C4/Search.pm b/C4/Search.pm
index 52939bd..53c8396 100644
--- a/C4/Search.pm
+++ b/C4/Search.pm
@@ -1696,9 +1696,12 @@ sub searchResults {
 
         }
 
-        # last check for norequest : if itemtype is notforloan, it can't be reserved either, whatever the items
-        $can_place_holds = 0
-          if $itemtypes{ $oldbiblio->{itemtype} }->{notforloan};
+        # if biblio level itypes are used and itemtype is notforloan, it can't be reserved either
+        if (!C4::Context->preference("item-level_itypes")) {
+            if ($itemtypes{ $oldbiblio->{itemtype} }->{notforloan}) {
+                $can_place_holds = 0;
+            }
+        }
         $oldbiblio->{norequests} = 1 unless $can_place_holds;
         $oldbiblio->{itemsplural}          = 1 if $items_count > 1;
         $oldbiblio->{items_count}          = $items_count;
-- 
1.7.2.3



More information about the Koha-patches mailing list