Bug 27058: Make checkout availability use all notforloan reasons
The ItemsAnyAvailableAndNotRestricted function is checking whether an
item can be checked out and it incorrectly only checks the positive
notforloan values when there can be also negative notforloan
values. If notforloan value is not 0 then it means the item cannot be
checked out. In the case of ordered items the value is negative (-1)
and thus before this change the checkout availability was reported
incorrectly.
To test:
1) Run prove t/db_dependent/Holds/DisallowHoldIfItemsAvailable.t
Notice it fails
2) Apply this patch
3) Run prove t/db_dependent/Holds/DisallowHoldIfItemsAvailable.t
Notice it passes now.
To test via Koha sandbox (Alternatively):
1) Create circ rule with If all unavailable
2) Create new biblio
3) Order a new item to the biblio via acquisitions and set the not
for loan value to Ordered / -1
4) Notice you cannot place a hold to the biblio
5) Apply patch
6) Notice you can now place a hold to the biblio
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>