X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=opac%2Fopac-user.pl;h=d3ff88884808e4fb95b503bff95811c70a4efeaa;hb=36df53ad8d4987e938e478d934d553b73e7450f2;hp=94b0614f80db82a2a494fb6cc60b657775f5b905;hpb=9d10d076122c4adb6c14b1b86b3bcca0e33ecc4a;p=koha.git diff --git a/opac/opac-user.pl b/opac/opac-user.pl index 94b0614f80..d3ff888848 100755 --- a/opac/opac-user.pl +++ b/opac/opac-user.pl @@ -17,8 +17,7 @@ # along with Koha; if not, see . -use strict; -#use warnings; FIXME - Bug 2505 +use Modern::Perl; use CGI qw ( -utf8 ); @@ -76,7 +75,7 @@ my ( $template, $borrowernumber, $cookie ) = get_template_and_user( } ); -my %renewed = map { $_ => 1 } split( ':', $query->param('renewed') ); +my %renewed = map { $_ => 1 } split( ':', $query->param('renewed') || '' ); my $show_priority; for ( C4::Context->preference("OPACShowHoldQueueDetails") ) { @@ -91,6 +90,8 @@ $template->param( shibbolethAuthentication => C4::Context->config('useshibboleth # get borrower information .... my $patron = Koha::Patrons->find( $borrowernumber ); my $borr = $patron->unblessed; +# unblessed is a hash vs. object/undef. Hence the use of curly braces here. +my $borcat = $borr ? $borr->{categorycode} : q{}; my ( $today_year, $today_month, $today_day) = Today(); my ($warning_year, $warning_month, $warning_day) = split /-/, $borr->{'dateexpiry'}; @@ -198,9 +199,8 @@ if ( $pending_checkouts->count ) { # Useless test accounttype => [ 'F', 'FU', 'L' ], itemnumber => $issue->{itemnumber} }, - { select => [ { sum => 'amountoutstanding' } ], as => ['charges'] } ); - $issue->{charges} = $charges->count ? $charges->next->get_column('charges') : 0; + $issue->{charges} = $charges->total_outstanding; my $rental_fines = Koha::Account::Lines->search( { @@ -208,15 +208,15 @@ if ( $pending_checkouts->count ) { # Useless test amountoutstanding => { '>' => 0 }, accounttype => 'Rent', itemnumber => $issue->{itemnumber} - }, - { - select => [ { sum => 'amountoutstanding' } ], - as => ['rental_fines'] } ); - $issue->{rentalfines} = $rental_fines->count ? $rental_fines->next->get_column('rental_fines') : 0; + $issue->{rentalfines} = $rental_fines->total_outstanding; - my $marcrecord = GetMarcBiblio({ biblionumber => $issue->{'biblionumber'} }); + my $marcrecord = GetMarcBiblio({ + biblionumber => $issue->{'biblionumber'}, + embed_items => 1, + opac => 1, + borcat => $borcat }); $issue->{'subtitle'} = GetRecordValue('subtitle', $marcrecord, GetFrameworkCode($issue->{'biblionumber'})); # check if item is renewable my ($status,$renewerror) = CanBookBeRenewed( $borrowernumber, $issue->{'itemnumber'} ); @@ -236,6 +236,7 @@ if ( $pending_checkouts->count ) { # Useless test $issue->{'auto_too_soon'} = 1 if $renewerror eq 'auto_too_soon'; $issue->{'auto_too_late'} = 1 if $renewerror eq 'auto_too_late'; $issue->{'auto_too_much_oweing'} = 1 if $renewerror eq 'auto_too_much_oweing'; + $issue->{'item_denied_renewal'} = 1 if $renewerror eq 'item_denied_renewal'; if ( $renewerror eq 'too_soon' ) { $issue->{'too_soon'} = 1; @@ -326,6 +327,7 @@ $template->param( OverDriveCirculation => C4::Context->preference('OverDriveCirculation') || 0, overdrive_error => scalar $query->param('overdrive_error') || undef, overdrive_tab => scalar $query->param('overdrive_tab') || 0, + RecordedBooksCirculation => C4::Context->preference('RecordedBooksClientSecret') && C4::Context->preference('RecordedBooksLibraryID'), ); my $patron_messages = Koha::Patron::Messages->search( @@ -365,7 +367,7 @@ $template->param( # back to the opac-results page my $search_query = $query->param('has-search-query'); -if ($search_query ne '') { +if ($search_query) { print $query->redirect( -uri => "/cgi-bin/koha/opac-search.pl?$search_query",