From e5162d9135876227745f7e91fbd6fd9a61879a64 Mon Sep 17 00:00:00 2001 From: Martin Renvoize Date: Tue, 21 Jul 2020 14:54:09 +0100 Subject: [PATCH] Bug 24665: Add support for filtering by cash register This patch makes it possible to filter on cash register on the cash register statistics page. To test: - Activate UseCashRegisters - Create a cash register or more to use - Create some manual fees and fines - Pay some of them off - Go to Tools > Cash register statistics - Test if the new filter for cash registers works as it should Signed-off-by: Kelly McElligott Signed-off-by: Katrin Fischer Signed-off-by: Jonathan Druart --- Koha/Template/Plugin/Registers.pm | 9 ++++++++- .../prog/en/modules/reports/cash_register_stats.tt | 14 ++++++++++++-- reports/cash_register_stats.pl | 9 +++++++++ 3 files changed, 29 insertions(+), 3 deletions(-) diff --git a/Koha/Template/Plugin/Registers.pm b/Koha/Template/Plugin/Registers.pm index d737b9c2f5..cb5fab8b61 100644 --- a/Koha/Template/Plugin/Registers.pm +++ b/Koha/Template/Plugin/Registers.pm @@ -91,9 +91,16 @@ sub all { $where->{branch} = C4::Context->userenv->{'branch'} if ( $filters->{current_branch} && C4::Context->userenv ); my $registers = Koha::Cash::Registers->search($where)->unblessed(); + + my $selected = $params->{selected}; for my $register ( @{$registers} ) { - $register->{selected} = ( defined( $self->session_register_id ) + if ( defined($selected) ) { + $register->{selected} = ( $register->{id} == $selected ) ? 1 : 0; + } + else { + $register->{selected} = ( defined( $self->session_register_id ) && $register->{id} eq $self->session_register_id ) ? 1 : 0; + } } return $registers; diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/reports/cash_register_stats.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/reports/cash_register_stats.tt index cbcc27a056..bc0dd7e9b9 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/reports/cash_register_stats.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/reports/cash_register_stats.tt @@ -1,8 +1,11 @@ [% USE raw %] [% USE Asset %] +[% USE Branches %] +[% USE Koha %] [% USE KohaDates %] [% USE Price %] [% USE ItemTypes %] +[% USE Registers %] [% SET footerjs = 1 %] [% PROCESS 'accounts.inc' %] [% INCLUDE 'doc-head-open.inc' %] @@ -96,9 +99,15 @@ [% END %] [% END %] - - + [% IF Koha.Preference('UseCashRegisters') %] +
  • + + +
  • + [% END %] @@ -186,6 +195,7 @@ [% MACRO jsinclude BLOCK %] + [% Asset.js("js/register_selection.js") | $raw %] [% INCLUDE 'datatables.inc' %]