Bug 29051

Summary: Seen renewal methods incorrectly blocked
Product: Koha Reporter: Andrew Fuerste-Henry <andrewfh>
Component: CirculationAssignee: Martin Renvoize <martin.renvoize>
Status: CLOSED FIXED QA Contact: Kyle M Hall <kyle>
Severity: major    
Priority: P5 - low CC: arthur.suzuki, caroline.cyr-la-rose, gmcharlt, kyle.m.hall, kyle, lucas, martin.renvoize, nick, tomascohen, victor
Version: Main   
Hardware: All   
OS: All   
Change sponsored?: --- Patch complexity: ---
Documentation contact: Documentation submission:
Text to go in the release notes:
Version(s) released in:
22.11.00, 22.05.05, 21.11.12, 21.05.19
Bug Depends on: 24083    
Bug Blocks:    
Attachments: Bug 29051: Enable seen renewal in the staff client
Bug 29051: Update svc api to allow seen renewals
Bug 29051: Enable seen renewal in the staff client
Bug 29051: Update svc api to allow seen renewals
Bug 29051: Enable seen renewal in the staff client
Bug 29051: Update svc api to allow seen renewals

Description Andrew Fuerste-Henry 2021-09-17 17:28:42 UTC
To recreate:
1 - turn on UnseenRenewals
2- confirm AllowRenewalLimitOverride is off
3- set your all/all rule to allow 1 unseen renewal, more than 1 regular renewal
4- check item out to patron, make sure you're following the all/all rule
5- renew item from OPAC as patron
6- confirm OPAC and intranet tell you next renewal must be at library but that you have renewals remaining
7- try to renew with the Renew Selected button in the Checkouts tab, you cannot select this checkout
8- try to renew with the Renew All button in the Checkouts tab, the item does not renew
9- try to check the item out to the patron again, get message "No more renewals possible"
10 - try to renew by putting the barcode in the big Renew box at the top of the page, get message "E Street shuffle : ( 1 ) has been renewed the maximum number of consecutive times without being seen by the library )"

That leaves staff with no way to perform a Seen renewal and reset the count un Unseen renewals, which means the patron is stuck and the item must be returned, which makes this feature deeply flawed.
Comment 1 Martin Renvoize 2022-05-11 14:40:15 UTC
Hmm, this looks like a regression.. I agree it should allow for renewal in the staff client as seen.
Comment 2 Martin Renvoize 2022-05-11 15:22:52 UTC
Created attachment 134898 [details] [review]
Bug 29051: Enable seen renewal in the staff client

This patch updates the javascript for the checkouts table to add the
checkbox back in for the case where too_unseen is the error returned by
CanBookBeRenewed, allowing such issues to be renewed.
Comment 3 Martin Renvoize 2022-05-11 15:22:56 UTC
Created attachment 134899 [details] [review]
Bug 29051: Update svc api to allow seen renewals

This patch updates the svc/renew api endpoint to allow seen renewals
when appropriate
Comment 4 Martin Renvoize 2022-05-11 15:24:52 UTC
OK, those two patches should resolve:

7- try to renew with the Renew Selected button in the Checkouts tab, you cannot select this checkout
8- try to renew with the Renew All button in the Checkouts tab, the item does not renew

Still working on the other avenues.
Comment 5 Martin Renvoize 2022-05-11 15:33:03 UTC
I'm not sure about the other two.. we don't have a clear way of saying "This wasn't a seen renewal" for them (On the table version we default to 'seen' but you have the checkbox to set 'unseen' and we handle it nicely as a result)..

For the search header renew, perhaps we're OK to always assume it's 'seen' (as in theory you are always scanning into that box), but for the normal Checkout way it could be via a search.. so maybe we should not always assume 'seen' or at least give the option to do an 'unseen' at this point.. think about telephone renewals as a workflow..

What do you think Andrew?
Comment 6 Lucas Gass 2022-06-28 16:27:52 UTC
(In reply to Martin Renvoize from comment #5)
> I'm not sure about the other two.. we don't have a clear way of saying "This
> wasn't a seen renewal" for them (On the table version we default to 'seen'
> but you have the checkbox to set 'unseen' and we handle it nicely as a
> result)..
> 
> For the search header renew, perhaps we're OK to always assume it's 'seen'
> (as in theory you are always scanning into that box), but for the normal
> Checkout way it could be via a search.. so maybe we should not always assume
> 'seen' or at least give the option to do an 'unseen' at this point.. think
> about telephone renewals as a workflow..
> 
> What do you think Andrew?

Not Andrew, but I assume this is OK. This at least leaves staff with a way to do a seen renewal.
Comment 7 Martin Renvoize 2022-06-29 15:46:40 UTC
I reckon go with this for now and work on the other bits as a distinct bug.. I've run out of time to continue here.
Comment 8 ByWater Sandboxes 2022-06-30 14:08:45 UTC
Created attachment 136780 [details] [review]
Bug 29051: Enable seen renewal in the staff client

This patch updates the javascript for the checkouts table to add the
checkbox back in for the case where too_unseen is the error returned by
CanBookBeRenewed, allowing such issues to be renewed.

Signed-off-by: Caroline <caroline.cyr-la-rose@inlibro.com>
Comment 9 ByWater Sandboxes 2022-06-30 14:08:49 UTC
Created attachment 136782 [details] [review]
Bug 29051: Update svc api to allow seen renewals

This patch updates the svc/renew api endpoint to allow seen renewals
when appropriate

Signed-off-by: Caroline <caroline.cyr-la-rose@inlibro.com>
Comment 10 Caroline Cyr La Rose 2022-06-30 14:09:56 UTC
7 and 8 work with the patch! 

Thanks Andrew and Martin, this is major
Comment 11 Kyle M Hall 2022-07-07 12:31:14 UTC
Created attachment 137271 [details] [review]
Bug 29051: Enable seen renewal in the staff client

This patch updates the javascript for the checkouts table to add the
checkbox back in for the case where too_unseen is the error returned by
CanBookBeRenewed, allowing such issues to be renewed.

Signed-off-by: Caroline <caroline.cyr-la-rose@inlibro.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Comment 12 Kyle M Hall 2022-07-07 12:33:23 UTC
Created attachment 137272 [details] [review]
Bug 29051: Update svc api to allow seen renewals

This patch updates the svc/renew api endpoint to allow seen renewals
when appropriate

Signed-off-by: Caroline <caroline.cyr-la-rose@inlibro.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Comment 13 Tomás Cohen Arazi 2022-07-08 18:35:38 UTC
Pushed to master for 22.11.

Nice work everyone, thanks!
Comment 14 Lucas Gass 2022-08-23 15:21:37 UTC
Backported to 22.05.x for 22.05.05
Comment 15 Arthur Suzuki 2022-08-26 07:46:20 UTC
pushed to 21.11.x for 21.11.12
Comment 16 Victor Grousset/tuxayo 2022-09-09 19:54:57 UTC
Backported: Pushed to 21.05.x branch for 21.05.19

Nothing to document I think.