From abd5d33264758a98ffecd9a5955477fc6ce72978 Mon Sep 17 00:00:00 2001 From: Owen Leonard Date: Fri, 1 Aug 2025 11:01:16 +0000 Subject: [PATCH] Bug 40589: Add table settings to recalls pages To test, apply the patch restart services. - Enable recalls if necessary. - You should create some recalls data to test with: - Place multiple recalls from the OPAC. - Go to Circulation -> Recalls queue and use the "Actions" menu to mark multiple recalls as overdue. - Check in multiple titles with recalls. - Cancel multiple recalls or complete some recalls by checking them out to the patron who requested them. - Page to test: - Recalls queue - Recalls to pull - Overdue recalls - Recalls awaiting pickup - Old recalls - Checkout page, recalls tab - Patron details page, recalls tab - Test each modified page to confirm that DataTables features work correctly: Filtering, paging, sorting, export, column configuration. - Go to Administration -> Table settings -> Circulation -> Recalls and change the table configuration in some way for each recall table. - View each recalls page to confirm that those defaults are shown. (You may need to use your browser's developer tools to delete saved table configuration in local storage). Sponsored-by: Athens County Public Libraries --- admin/columns_settings.yml | 205 ++++++++++++++++++ .../prog/en/includes/recalls.inc | 25 ++- .../prog/en/modules/circ/circulation.tt | 1 + .../prog/en/modules/members/moremember.tt | 1 + .../prog/en/modules/members/recallshistory.tt | 4 + .../en/modules/recalls/recalls_old_queue.tt | 4 + .../en/modules/recalls/recalls_overdue.tt | 6 +- .../prog/en/modules/recalls/recalls_queue.tt | 6 +- .../en/modules/recalls/recalls_to_pull.tt | 6 +- .../en/modules/recalls/recalls_waiting.tt | 16 +- koha-tmpl/intranet-tmpl/prog/js/recalls.js | 25 ++- 11 files changed, 272 insertions(+), 27 deletions(-) diff --git a/admin/columns_settings.yml b/admin/columns_settings.yml index 380a48d3ba8..0a18bbba4bb 100644 --- a/admin/columns_settings.yml +++ b/admin/columns_settings.yml @@ -1467,6 +1467,32 @@ modules: - columnname: patron + recalls-table: + default_display_length: 20 + columns: + - columnname: completed + cannot_be_toggled: 1 + cannot_be_modified: 1 + is_hidden: 1 + - + columnname: title + - + columnname: requested_by + - + columnname: placed_on + - + columnname: expires_on + - + columnname: pickup_location + - + columnname: status + - + columnname: due_date + - + columnname: actions + cannot_be_toggled: 1 + cannot_be_modified: 1 + holdshistory: holdshistory-table: default_display_length: 20 @@ -1529,6 +1555,33 @@ modules: - columnname: return_date + recallshistory: + recallshistory-table: + default_display_length: 20 + columns: + - columnname: completed + cannot_be_toggled: 1 + cannot_be_modified: 1 + is_hidden: 1 + - + columnname: title + - + columnname: requested_by + - + columnname: placed_on + - + columnname: expires_on + - + columnname: pickup_location + - + columnname: status + - + columnname: due_date + - + columnname: actions + cannot_be_toggled: 1 + cannot_be_modified: 1 + patron-lists: patron-list-table: default_display_length: 20 @@ -1786,6 +1839,32 @@ modules: - columnname: patron + recalls-table: + default_display_length: 20 + columns: + - columnname: completed + cannot_be_toggled: 1 + cannot_be_modified: 1 + is_hidden: 1 + - + columnname: title + - + columnname: requested_by + - + columnname: placed_on + - + columnname: expires_on + - + columnname: pickup_location + - + columnname: status + - + columnname: due_date + - + columnname: actions + cannot_be_toggled: 1 + cannot_be_modified: 1 + table_borrowers: columns: - @@ -2289,6 +2368,132 @@ modules: columnname: patron - columnname: booking_dates + recalls: + recalls-old-queue: + columns: + - + columnname: completed + cannot_be_toggled: 1 + cannot_be_modified: 1 + is_hidden: 1 + - + columnname: title + - + columnname: requested_by + - + columnname: placed_on + - + columnname: expires_on + - + columnname: pickup_location + - + columnname: status + + recalls-overdue: + columns: + - + columnname: completed + cannot_be_toggled: 1 + cannot_be_modified: 1 + is_hidden: 1 + - + columnname: checkbox + cannot_be_toggled: 1 + cannot_be_modified: 1 + - + columnname: title + - + columnname: requested_by + - + columnname: placed_on + - + columnname: expires_on + - + columnname: pickup_location + - + columnname: status + - + columnname: due_date + - + columnname: actions + cannot_be_toggled: 1 + cannot_be_modified: 1 + + recalls-queue: + columns: + - + columnname: completed + cannot_be_toggled: 1 + cannot_be_modified: 1 + is_hidden: 1 + - + columnname: checkbox + cannot_be_toggled: 1 + cannot_be_modified: 1 + - + columnname: title + - + columnname: requested_by + - + columnname: placed_on + - + columnname: expires_on + - + columnname: pickup_location + - + columnname: status + - + columnname: due_date + - + columnname: actions + cannot_be_toggled: 1 + cannot_be_modified: 1 + + recalls-to-pull: + columns: + - + columnname: items_to_pull + - + columnname: items_available + - + columnname: patrons_with_recalls + - + columnname: firstpatron + - + columnname: title + - + columnname: libraries + - + columnname: callnumbers + - + columnname: copynumbers + - + columnname: enumeration + - + columnname: itemtypes + - + columnname: locations + - + columnname: earliest_recall_date + - + columnname: action + cannot_be_toggled: 1 + cannot_be_modified: 1 + + recalls-waiting: + columns: + - + columnname: available_since + - + columnname: title + - + columnname: requested_by + - + columnname: pickup_location + - + columnname: action + cannot_be_toggled: 1 + cannot_be_modified: 1 opac: biblio-detail: diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/recalls.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/recalls.inc index a4f8fece616..8ab5b7771aa 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/recalls.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/recalls.inc @@ -4,22 +4,23 @@ - [% IF checkboxes %][% END %] - - [% UNLESS specific_patron %][% END %] - - - - - [% UNLESS viewing_old %][% END %] - [% UNLESS viewing_old %][% END %] + + [% IF checkboxes %][% END %] + + [% UNLESS specific_patron %][% END %] + + + + + [% UNLESS viewing_old %][% END %] + [% UNLESS viewing_old %][% END %] [% FOREACH recall IN recalls %] - [% SET tr_class = recall.completed ? 'old' : '' %] - + + [% IF checkboxes %]
 TitleRequested byPlaced onExpires onPickup locationStatusDue date  TitleRequested byPlaced onExpires onPickup locationStatusDue date 
[% recall.completed | html %] [% IF recall.completed %] @@ -90,7 +91,7 @@ [% IF recall.completed %]   [% ELSE %] -
+