LP##1661688 - Want easy way to clear a hold when picked up by other patron.
authorDan Pearl <dpearl@cwmars.org>
Tue, 24 Jan 2017 18:59:01 +0000 (13:59 -0500)
committerJason Stephenson <jason@sigio.com>
Fri, 9 Feb 2018 20:33:05 +0000 (15:33 -0500)
commite973487d86acfbbc170fd48b31f631bab6c93cff
treefa240711a215e5dc964a343dfe13ea7bd08fc81e
parent1f630f2189842cec8949596edd3c2fada4a9c8fc
LP##1661688 - Want easy way to clear a hold when picked up by other patron.

This common action was handled previously as
    1) item is scanned - The system detects that this items is for a different
       patron, and an error message is displayed.

    2) Force Override was selected - If the librarian had the appropriate
       privileges, the Force Override could allow the checkout to occur.

    3) librarian cancels original hold - This independent operation would
       be needed to cancel the original hold, otherwise the hold would be
       targeted again.

This feature provides the option to cancel the hold in step #2. An error
message will be displayed as before, but within that message will be a checkbox to allow cancelling of the original hold which, if checked, will mean that step #3 will be automatically done.

The checked/non-checked state of the checkbox is initialized with an
organizational unit setting. The default is false (to preserve default
prior behavior).

Note: This change only affects the "web client".

TO TEST THIS

A. Before the Patch

Hold an item for patron "A".  Attempt to check it out for patron "B".
Observe the choices to Force Override (to allow the checkout) or to cancel.
Do a Force Override and observe that the original hold is still active.

B. After the Patch

Repeat the above scenario, and observe the (blank) checkbox.  Perform the
Force Override and observe that the original hold is still active.

Repeat the scenario, except this time check the checkbox.  Observe after the checheckout is done that original hold is gone.

Adjust the organizational setting (see the Release Notes) to change the default
appearance of the checkbox.

For completeness, you can verify that if you cancel out the message pop-up that the checkout is cancelled and and that the hold status is unchanged, regardless of the state of the checkbox.

Signed-off-by: Dan Pearl <dpearl@cwmars.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Open-ILS/src/perlmods/lib/OpenILS/Application/Circ/Circulate.pm
Open-ILS/src/sql/Pg/950.data.seed-values.sql
Open-ILS/src/sql/Pg/upgrade/XXXX.schema.hold_checkout.sql [new file with mode: 0644]
Open-ILS/src/templates/staff/circ/share/t_event_override_dialog.tt2
Open-ILS/web/js/ui/default/staff/circ/services/circ.js
docs/RELEASE_NOTES_NEXT/Circulation/alternate_patron_hold_pickup.adoc [new file with mode: 0644]