Koha/catalogue/issuehistory.pl
Jonathan Druart 117e3a18f5 Bug 20934: Fix display of old checkouts in the checkout history page
Again a regression caused by
  commit fa54100dff
  Bug 18403: Use patron-title.inc when hidepatronname is used [SPECIFIC for issuehistory]

GetBiblioIssues does a union all with issues and old_issues, so we
should old_issues as well.
To make the join on the items table we need to define the item and
patron methods. For consistency the relationships have been redefined
(item instead of itemnumber, borrower instead of borrowernumber) in the
DBIx::Class definition.

This is not perfect but I think the best way to provide an easy to
backport patch.

It highlights that we need improvements in this area.

Signed-off-by: Maryse Simard <maryse.simard@inlibro.com>
The patch works as expected.

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
2018-06-22 12:47:48 +00:00

69 lines
1.8 KiB
Perl
Executable file

#!/usr/bin/perl
# This file is part of Koha.
#
# Koha is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# Koha is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Koha; if not, see <http://www.gnu.org/licenses>.
use Modern::Perl;
use CGI qw ( -utf8 );
use C4::Auth;
use C4::Output;
use C4::Biblio; # GetBiblio
use C4::Search; # enabled_staff_search_views
use Koha::Checkouts;
use Koha::Old::Checkouts;
use Koha::Biblios;
my $query = new CGI;
my ( $template, $borrowernumber, $cookie ) = get_template_and_user(
{
template_name => "catalogue/issuehistory.tt",
query => $query,
type => "intranet",
authnotrequired => 0,
flagsrequired => { catalogue => 1 },
}
);
my $biblionumber = $query->param('biblionumber');
my @checkouts = Koha::Checkouts->search(
{ biblionumber => $biblionumber },
{
join => 'item',
order_by => 'timestamp',
}
);
my @old_checkouts = Koha::Old::Checkouts->search(
{ biblionumber => $biblionumber },
{
join => 'item',
order_by => 'timestamp',
}
);
my $biblio = Koha::Biblios->find( $biblionumber );
$template->param(
checkouts => [ @checkouts, @old_checkouts ],
biblio => $biblio,
issuehistoryview => 1,
C4::Search::enabled_staff_search_views,
);
output_html_with_http_headers $query, $cookie, $template->output;