diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tt index 628aea6064..18056f0b06 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tt @@ -285,6 +285,17 @@ [% UNLESS ( multi_hold ) %]

Place hold on [% INCLUDE 'biblio-title.inc' link = 1 %] [% IF biblio.author %]by [% biblio.author | html %][% END %]

+ + [% IF ( patron && reserve_charge ) %] +
+ [% IF Koha.Preference('HoldFeeMode') == 'any_time_is_collected' %] + Note: [% INCLUDE 'patron-title.inc' patron = patron no_title = 1 no_cardnumber = 1 hide_patron_infos_if_needed = 1 %] will be charged a hold fee of [% reserve_charge | $Price %] when they collect this + item + [% ELSE %] + Note: [% INCLUDE 'patron-title.inc' patron = patron no_title = 1 no_cardnumber = 1 hide_patron_infos_if_needed = 1 %] will be charged a hold fee of [% reserve_charge | $Price %] for placing this hold + [% END %] +
+ [% END %] [% ELSE %]

[% IF ( patron ) %] @@ -463,6 +474,18 @@ [% IF ( biblioloo.publicationyear ) %]
  • Publication year: [% biblioloo.publicationyear | html %]
  • [% END %] + [% IF ( patron && biblioloo.reserve_charge ) %] +
  • + Hold fee: + [% IF Koha.Preference('HoldFeeMode') == 'any_time_is_collected' %] + [% biblioloo.reserve_charge | $Price %] + (charged when collected) + [% ELSE %] + [% biblioloo.reserve_charge | $Price %] + (charged when placed) + [% END %] +
  • + [% END %] [% IF ( biblioloo.warn ) %] @@ -1211,6 +1234,18 @@ [% IF ( biblioloo.publicationyear ) %]
  • Publication year: [% biblioloo.publicationyear | html %]
  • [% END %] + [% IF ( patron && biblioloo.reserve_charge ) %] +
  • + Hold fee: + [% IF Koha.Preference('HoldFeeMode') == 'any_time_is_collected' %] + [% biblioloo.reserve_charge | $Price %] + (charged when collected) + [% ELSE %] + [% biblioloo.reserve_charge | $Price %] + (charged when placed) + [% END %] +
  • + [% END %] [% IF ( biblioloo.warn ) %] diff --git a/reserve/request.pl b/reserve/request.pl index fbb94fbed3..03379411ad 100755 --- a/reserve/request.pl +++ b/reserve/request.pl @@ -33,7 +33,7 @@ use Date::Calc qw( Date_to_Days ); use C4::Output qw( output_html_with_http_headers ); use C4::Auth qw( get_template_and_user ); use C4::Reserves - qw( AlterPriority ToggleLowestPriority CanBookBeReserved GetMaxPatronHoldsForRecord CanItemBeReserved IsAvailableForItemLevelRequest ); + qw( AlterPriority ToggleLowestPriority CanBookBeReserved GetMaxPatronHoldsForRecord CanItemBeReserved IsAvailableForItemLevelRequest GetReserveFee ); use C4::Items qw( get_hostitemnumbers_of ); use C4::Koha qw( getitemtypeimagelocation ); use C4::Serials qw( CountSubscriptionFromBiblionumber ); @@ -769,6 +769,11 @@ if ( ( $findborrower && $borrowernumber_hold || $findclub && $club_hold ) $biblioloopiter{rank} = $fixedRank; $biblioloopiter{reserveloop} = \@reserveloop; + # Pass through any reserve charge + if ($patron) { + $biblioloopiter{reserve_charge} = GetReserveFee( $patron->borrowernumber, $biblionumber ); + } + if (@reserveloop) { $template->param( reserveloop => \@reserveloop ); } @@ -798,6 +803,11 @@ if ( ( $findborrower && $borrowernumber_hold || $findclub && $club_hold ) unless ($multi_hold) { my $biblio = Koha::Biblios->find( $biblionumbers[0] ); $template->param( biblio => $biblio ); + + # Pass through any reserve charge for single holds + if ($borrowernumber_hold) { + $template->param( reserve_charge => GetReserveFee( $borrowernumber_hold, $biblionumbers[0] ) ); + } } $template->param( biblionumbers => \@biblionumbers );