To reproduce: 1. Enable hold cancellation requests from the OPAC i. Go to Administration > Circulation and Fines rules ii. In the "Default waiting hold cancellation policy" section, add the rule: All / All / Yes 2. Place at least two holds for pickup at the logged-in library (for ease of testing, place both holds for the same patron) 3. Check in items for both holds and confirm to set holds to Waiting 4. Log into the OPAC as the patron from step 2 5. Go to the patron's holds tab and request cancellation for both holds 6. In the staff interface, go to Circulation > Holds awaiting pickup ==> Error 500! :( Also, the logs contain the error: ==> /var/log/koha/montgomerytest/plack-error.log <== Template process failed: undef error - The method Koha::Hold::CancellationRequest->0 is not covered by tests! Trace begun at /usr/share/koha/lib/Koha/Object.pm line 1042 Koha::Object::AUTOLOAD('Koha::Hold::CancellationRequest=HASH(0x55609e31c2c0)') called at /usr/share/koha/intranet/htdocs/intranet-tmpl/prog/en/includes/waiting_holds.inc line 40 It looks like this was caused by a typo in bug 38714 - cancellation_request.0 (object) instead of cancellation_requests.0 (list).
Created attachment 186153 [details] [review] Bug 40755: Fix typo in waiting_holds.inc Fix a typo that caused an error 500 on the holds awaiting pickup page when there are holds with cancellation requests. To test: 1. Enable hold cancellation requests from the OPAC i. Go to Administration > Circulation and Fines rules ii. In the "Default waiting hold cancellation policy" section, add the rule: All / All / Yes 2. Place at least two holds for pickup at the logged-in library (for ease of testing, place both holds for the same patron) 3. Check in items for both holds and confirm to set holds to Waiting 4. Log into the OPAC as the patron from step 2 5. Go to the patron's holds tab and request cancellation for both holds 6. In the staff interface, go to Circulation > Holds awaiting pickup ==> Error 500! :( 7. Apply patch and refresh the page ==> The page loads! :) Bonus testing (KTD only): 1. Edit one of the cancellation request dates, so that they are not both the same date: ktd --shell koha-mysql kohadev SELECT * FROM hold_cancellation_requests; UPDATE hold_cancellation_requests SET creation_date=<date> WHERE hold_cancellation_request_id = <id>; 2. Refresh the Holds awaiting pickup page again, and switch to the Holds with cancellation requests tab 3. Sort by hold cancellation request date and confirm the sorting works correctly
Created attachment 186167 [details] [review] Bug 40755: Fix typo in waiting_holds.inc Fix a typo that caused an error 500 on the holds awaiting pickup page when there are holds with cancellation requests. To test: 1. Enable hold cancellation requests from the OPAC i. Go to Administration > Circulation and Fines rules ii. In the "Default waiting hold cancellation policy" section, add the rule: All / All / Yes 2. Place at least two holds for pickup at the logged-in library (for ease of testing, place both holds for the same patron) 3. Check in items for both holds and confirm to set holds to Waiting 4. Log into the OPAC as the patron from step 2 5. Go to the patron's holds tab and request cancellation for both holds 6. In the staff interface, go to Circulation > Holds awaiting pickup ==> Error 500! :( 7. Apply patch and refresh the page ==> The page loads! :) Bonus testing (KTD only): 1. Edit one of the cancellation request dates, so that they are not both the same date: ktd --shell koha-mysql kohadev SELECT * FROM hold_cancellation_requests; UPDATE hold_cancellation_requests SET creation_date=<date> WHERE hold_cancellation_request_id = <id>; 2. Refresh the Holds awaiting pickup page again, and switch to the Holds with cancellation requests tab 3. Sort by hold cancellation request date and confirm the sorting works correctly Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Created attachment 186188 [details] [review] Bug 40755: Fix typo in waiting_holds.inc Fix a typo that caused an error 500 on the holds awaiting pickup page when there are holds with cancellation requests. To test: 1. Enable hold cancellation requests from the OPAC i. Go to Administration > Circulation and Fines rules ii. In the "Default waiting hold cancellation policy" section, add the rule: All / All / Yes 2. Place at least two holds for pickup at the logged-in library (for ease of testing, place both holds for the same patron) 3. Check in items for both holds and confirm to set holds to Waiting 4. Log into the OPAC as the patron from step 2 5. Go to the patron's holds tab and request cancellation for both holds 6. In the staff interface, go to Circulation > Holds awaiting pickup ==> Error 500! :( 7. Apply patch and refresh the page ==> The page loads! :) Bonus testing (KTD only): 1. Edit one of the cancellation request dates, so that they are not both the same date: ktd --shell koha-mysql kohadev SELECT * FROM hold_cancellation_requests; UPDATE hold_cancellation_requests SET creation_date=<date> WHERE hold_cancellation_request_id = <id>; 2. Refresh the Holds awaiting pickup page again, and switch to the Holds with cancellation requests tab 3. Sort by hold cancellation request date and confirm the sorting works correctly Signed-off-by: Lucas Gass <lucas@bywatersolutions.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Oops, sorry about that. Thanks for the patch, Emily!
Nice work everyone! Pushed to main for 25.11
Nice work everyone! Pushed to 25.05.x
Depends on Bug 38714 not in 24.11.x