From 48d59f9cf67cc46551524d46ef6c1778fc3a923f Mon Sep 17 00:00:00 2001 From: Martin Renvoize Date: Thu, 20 Jun 2024 11:41:15 +0100 Subject: [PATCH] Bug 37065: Filter expired bookings by default This patch adds a default filter for the bookings table on the bookings tab of a biblio. We also add the option to turn off the filtering after initial page load. Signed-off-by: David Nind Signed-off-by: Julian Maurice --- .../prog/en/modules/bookings/list.tt | 33 ++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/bookings/list.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/bookings/list.tt index f1c299a40c..619397a1f6 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/bookings/list.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/bookings/list.tt @@ -43,6 +43,10 @@

Bookings for [% INCLUDE 'biblio-title-head.inc' %]

+
+ Show expired +
+
@@ -198,6 +202,18 @@ } ); + let filter_expired = true; + let additional_filters = { + end_date: function(){ + if ( filter_expired ) { + let today = new Date(); + return { ">=": today.toISOString() } + } else { + return; + } + } + }; + var bookings_table_url = "/api/v1/biblios/[% biblionumber | uri %]/bookings"; bookings_table = $('#bookings_table').kohaTable({ "ajax": { @@ -281,7 +297,22 @@ return result; } }] - }, [], 0); + }, [], 0, additional_filters); + + var txtActivefilter = _("Show expired"); + var txtInactivefilter = _("Hide expired"); + $("#expired_filter").on("click", function() { + if ($(this).hasClass('filtered')){ + filter_expired = false; + $(this).html(' '+txtInactivefilter); + } else { + filter_expired = true; + $(this).html(' '+txtActivefilter); + } + bookings_table.DataTable().draw(); + $(this).toggleClass('filtered'); + }); + }); [% END %] -- 2.30.2