From e528605a14e0af236cab3677eab855b465a755b8 Mon Sep 17 00:00:00 2001 From: Emily Lamancusa Date: Tue, 16 Jul 2024 10:36:23 -0400 Subject: [PATCH] Bug 37332: Fix unseen and customer renewal date parameters in svc To test: 0. Enable unseen renewals i. Set the system preference UnseenRenewals to Allowed ii. Edit the circulation rules to specify the maximum number of unseen renewals allowed 1. Check out an item to a patron 2. In the checkouts table on that patron's account, check the "Renew" checkbox for that item 3. Select a custom renewal date using the Renewal due date flatpicker 4. Check the checkbox labeled "Renew as unseen if appropriate" 4. Click Renew selected items --> The item renews, but its new due date follows the renewal period specified in the circulation rules, regardless of what date was entered in the Renewal due date field --> The checkout still has all of its unseen renewals remaining, indicating that the renewal was not processed as an unseen renewal 5. Enter another custom renewal date and renew checkout with the Renew all button --> Same result 6. Apply patch and restart_all 7. Repeat test plan --> Custom renewal date is now respected --> Number of unseen renewals remaining decreases when "Renew as unseen" checkbox is checked 8. Renew the item with the "Renew as unseen" checkbox unchecked --> Confirm that number of unseen renewals is reset (i.e. the checkout once again has all of its unseen renewals remaining), indicating that the renewal was processed as a "seen" renewal --- .../prog/js/fetch/circulation-api-client.js | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/js/fetch/circulation-api-client.js b/koha-tmpl/intranet-tmpl/prog/js/fetch/circulation-api-client.js index 1eeb06824c..4f32d5caa5 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/fetch/circulation-api-client.js +++ b/koha-tmpl/intranet-tmpl/prog/js/fetch/circulation-api-client.js @@ -33,13 +33,19 @@ export class CirculationAPIClient extends HttpClient { renew: checkout => this.post({ endpoint: "renew", - body: "itemnumber=%s&borrowernumber=%s&branchcode=%s&override_limit=%s".format( - checkout.item_id, - checkout.patron_id, - checkout.library_id, - checkout.override_limit - ), - //+ ( checkout.seen !== undefined ? "&seen=%s".format(checkout.seen) : "" ) + (checkout.date_due !== undefined ? "&date_due=%s".format(checkout.date_due) : ""), + body: + "itemnumber=%s&borrowernumber=%s&branchcode=%s&override_limit=%s".format( + checkout.item_id, + checkout.patron_id, + checkout.library_id, + checkout.override_limit + ) + + (checkout.seen !== undefined + ? "&seen=%s".format(checkout.seen) + : "") + + (checkout.date_due !== undefined + ? "&date_due=%s".format(checkout.date_due) + : ""), headers: { "Content-Type": "application/x-www-form-urlencoded;charset=utf-8", -- 2.34.1