Bug 3595 (partial): Items seen at checkin are not filling holds well
authorruth@bywatersolutions.com <ruth@bywatersolutions.com>
Fri, 4 Mar 2011 19:04:43 +0000 (13:04 -0600)
committerChris Cormack <chrisc@catalyst.net.nz>
Wed, 16 Mar 2011 07:53:20 +0000 (20:53 +1300)
commit784b9df4f240302d3946089862ca6bf6f33c08a9
treee9527dc05f7ffa79ed3830a0bace70437d33aa59
parentd52f3680f482a42cc98ad9810c011c8775d9b3ee
Bug 3595 (partial): Items seen at checkin are not filling holds well

In Liz's second comment on this bug, she points out that local-only
holds (and also no-holds) items are being used to fill the first hold
in the queue, no matter where located, transitting if necessary.  If
all the items on a biblio are set to no-holds types, this problem
would never arise, as no holds could be *placed*.  But if you have
one or more unlimitedor local-hold items, then holds are getting
filled by the first item to cross a scanner, no matter what.

This patch will check during C4::Reserves::CheckReserves to make sure
that the hold being handed back to AddReturn is actually fillable by
the item just scanned.  One caveat:  If CircControl is set to "the library
you are logged in at", this will cause items checked in at
other-than-their-home-library to fill local holds at the library where
scanned.  This is, however, an edge case!

Signed-off-by: Liz Rea <lrea@nekls.org>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
C4/Reserves.pm