When a recall is requested on a specific item, all holdings on the record show a 'recalled by (borrower)' message on the staff interface catalogue detail page. That message should only show for the specific item.
I've confirmed a similar thing shows on the OPAC, if an item-level recall is made, and someone else tries to place a recall on the same record, the message 'recalled by patron' shows for every item.
Created attachment 155245 [details] [review] Bug 34722: Prevent other items from displaying to fill item-level recalls This patch prevents other items attached to a record from being displayed as 'recalled' by item-level recalls. To test: 1. Ensure UseRecalls system preference is enabled and circulation rules relevant to recalls are configured. Set 'on shelf recalls allowed' circulation rule 'if any unavailable' for ease of testing. 2. Search for a record that has multiple items, or create one with multiple items. Check out two of the items (Item A and Item B) to a patron, Patron A. 3. Log into the OPAC as another patron, Patron B. Search for the record and place a recall. Choose to recall a specific item and select Item A. 4. Go back to the staff interface and view the catalogue detail page for the record. Notice that every item has a 'recalled by...' message, even though Item A was specifically recalled. 5. Log into the OPAC as another patron, Patron C. Search for the record and place a recall. Choose to recall a specific item, notice every item has a 'recalled by...' message. Select Item B and Confirm. 6. In your terminal, the 'Other items are not returned for item-level recalls' test should fail when running prove t/db_dependent/Koha/Item.t 7. Apply the patch and restart services 8. Confirm tests at t/db_dependent/Koha/Item.t now pass 9. Refresh the staff interface, confirm only Items A and B have the recalled message and the recall patron information for each item is accurate 10. Log into the OPAC as another patron, Patron D. Search for the record and place a recall. Choose to recall a specific item. Confirm only Items A and B have the recalled message. Sponsored-by: Toi Ohomai Institute of Technology
Created attachment 155763 [details] [review] Bug 34722: Prevent other items from displaying to fill item-level recalls This patch prevents other items attached to a record from being displayed as 'recalled' by item-level recalls. To test: 1. Ensure UseRecalls system preference is enabled and circulation rules relevant to recalls are configured. Set 'on shelf recalls allowed' circulation rule 'if any unavailable' for ease of testing. 2. Search for a record that has multiple items, or create one with multiple items. Check out two of the items (Item A and Item B) to a patron, Patron A. 3. Log into the OPAC as another patron, Patron B. Search for the record and place a recall. Choose to recall a specific item and select Item A. 4. Go back to the staff interface and view the catalogue detail page for the record. Notice that every item has a 'recalled by...' message, even though Item A was specifically recalled. 5. Log into the OPAC as another patron, Patron C. Search for the record and place a recall. Choose to recall a specific item, notice every item has a 'recalled by...' message. Select Item B and Confirm. 6. In your terminal, the 'Other items are not returned for item-level recalls' test should fail when running prove t/db_dependent/Koha/Item.t 7. Apply the patch and restart services 8. Confirm tests at t/db_dependent/Koha/Item.t now pass 9. Refresh the staff interface, confirm only Items A and B have the recalled message and the recall patron information for each item is accurate 10. Log into the OPAC as another patron, Patron D. Search for the record and place a recall. Choose to recall a specific item. Confirm only Items A and B have the recalled message. Sponsored-by: Toi Ohomai Institute of Technology Signed-off-by: David Nind <david@davidnind.com>
Testing notes (using KTD): 1. For me, the tests didn't fail in step 6. They continued to pass after the patch was applied. 2. Setup of circulation and charges rules: . Recalls allowed (total): 5 . Recalls per record (count): 5 . On shelf recalls allowed: if any unavailable . Recall due date interval (day): 3 . Recall overdue fine amount: 5 . Recall pickup period (day): 3 3. I used record 146 (The definitive guide to Catalyst) and changed three patrons so they were all members of the Fairview library.
Noticed the patch has a hotmail email address: From: Aleisha Amohia <aleishaamohia@hotmail.com>
Created attachment 155765 [details] [review] Bug 34722: Prevent other items from displaying to fill item-level recalls This patch prevents other items attached to a record from being displayed as 'recalled' by item-level recalls. To test: 1. Ensure UseRecalls system preference is enabled and circulation rules relevant to recalls are configured. Set 'on shelf recalls allowed' circulation rule 'if any unavailable' for ease of testing. 2. Search for a record that has multiple items, or create one with multiple items. Check out two of the items (Item A and Item B) to a patron, Patron A. 3. Log into the OPAC as another patron, Patron B. Search for the record and place a recall. Choose to recall a specific item and select Item A. 4. Go back to the staff interface and view the catalogue detail page for the record. Notice that every item has a 'recalled by...' message, even though Item A was specifically recalled. 5. Log into the OPAC as another patron, Patron C. Search for the record and place a recall. Choose to recall a specific item, notice every item has a 'recalled by...' message. Select Item B and Confirm. 6. In your terminal, the 'Other items are not returned for item-level recalls' test should fail when running prove t/db_dependent/Koha/Item.t 7. Apply the patch and restart services 8. Confirm tests at t/db_dependent/Koha/Item.t now pass 9. Refresh the staff interface, confirm only Items A and B have the recalled message and the recall patron information for each item is accurate 10. Log into the OPAC as another patron, Patron D. Search for the record and place a recall. Choose to recall a specific item. Confirm only Items A and B have the recalled message. Sponsored-by: Toi Ohomai Institute of Technology Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Perltidied new code.
Pushed to master for 23.11. Nice work everyone, thanks!
Pushed to 23.05.x for 23.05.05
Nice work everyone! Pushed to oldstable for 22.11.x