use Koha::Token;
use Try::Tiny;
+use URI::Escape;
our $cgi = CGI->new;
my $illRequests = Koha::Illrequests->new;
# If we receive a pre-filter, make it available to the template
my $possible_filters = ['borrowernumber'];
- my $active_filters = [];
+ my $active_filters = {};
foreach my $filter(@{$possible_filters}) {
if ($params->{$filter}) {
- push @{$active_filters}, "$filter=$params->{$filter}";
+ # We shouldn't need to escape $filter here since we're using
+ # a whitelist, but just to be sure...
+ $active_filters->{uri_escape_utf8($filter)} =
+ uri_escape_utf8(scalar $params->{$filter});
}
}
- if (scalar @{$active_filters} > 0) {
- $template->param(
- prefilters => join(",", @{$active_filters})
- );
+ if (keys %{$active_filters}) {
+ my @tpl_arr;
+ foreach my $key (keys %{$active_filters}) {
+ push @tpl_arr, $key . "=" . $active_filters->{$key};
+ }
}
-
+ $template->param(
+ prefilters => join("&", @tpl_arr)
+ );
} elsif ( $op eq "save_comment" ) {
die "Wrong CSRF token" unless Koha::Token->new->check_csrf({
session_id => scalar $cgi->cookie('CGISESSID'),
[% INCLUDE 'calendar.inc' %]
[% Asset.js("lib/jquery/plugins/jquery.checkboxes.min.js") | $raw %]
<script>
- var prefilters = '[% prefilters | html %]';
+ var prefilters = '[% prefilters %]';
// Set column settings
var columns_settings = [% ColumnsSettings.GetColumns( 'illrequests', 'ill-requests', 'ill-requests', 'json' ) %];
</script>