https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=23909 --- Comment #35 from Andrew Fuerste-Henry <andrew@bywatersolutions.com> --- Created attachment 197939 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=197939&action=edit Bug 23909: Block waiting holds at SCO checkout AllowItemsOnHoldCheckoutSCO was previously passed through to CanBookBeIssued as the ignore_reserves flag, which skipped the entire holds branch in C4::Circulation and silently allowed checkout of items already waiting on the hold shelf (reserves.found = 'W') or in transit/processing for another patron's hold. With the pref now a 3-value Choice: 0 = don't allow checkout of any held items 1 = allow checkout of items with a pending hold only 2 = allow checkout of items with any hold state sco-main.pl now always calls CanBookBeIssued with ignore_reserves=0 and filters the needsconfirmation keys according to the pref value, mirroring the pattern SIP already uses. RESERVE_WAITING, TRANSFERRED and PROCESSING are added to the error-matching list and to the SCO template so patrons see a specific "on the hold shelf" / "in transit" / "being processed" message instead of falling through to the generic "please see a member of the library staff" line. Test plan: - Enable WebBasedSelfCheck; log in to /cgi-bin/koha/sco/sco-main.pl. - Create an item with a pending hold for another patron (reserves.found IS NULL). - With AllowItemsOnHoldCheckoutSCO = 0, scan the barcode: checkout is refused with "This item is on hold for another patron". - Switch to 1 ("Allow pending holds only"): checkout succeeds. - Set the hold to waiting (reserves.found = 'W') and try again with the pref still at 1: checkout is refused with "This item is waiting on the hold shelf for another patron". - Switch to 2 ("Allow pending and waiting holds"): checkout succeeds. - Repeat with found = 'T' and 'P' at pref = 1 -> refused with the appropriate transit/processing message; at pref = 2 -> allowed. Signed-off-by: Kristi Krueger <kkrueger@cuyahogalibrary.org> Signed-off-by: Andrew Fuerste Henry <andrew@bywatersolutions.com> -- You are receiving this mail because: You are watching all bug changes.