|
Lines 33-39
use Date::Calc qw( Date_to_Days );
Link Here
|
| 33 |
use C4::Output qw( output_html_with_http_headers ); |
33 |
use C4::Output qw( output_html_with_http_headers ); |
| 34 |
use C4::Auth qw( get_template_and_user ); |
34 |
use C4::Auth qw( get_template_and_user ); |
| 35 |
use C4::Reserves |
35 |
use C4::Reserves |
| 36 |
qw( AlterPriority ToggleLowestPriority CanBookBeReserved GetMaxPatronHoldsForRecord CanItemBeReserved IsAvailableForItemLevelRequest GetReserveFee ); |
36 |
qw( AlterPriority ToggleLowestPriority CanBookBeReserved GetMaxPatronHoldsForRecord CanItemBeReserved IsAvailableForItemLevelRequest ); |
| 37 |
use C4::Items qw( get_hostitemnumbers_of ); |
37 |
use C4::Items qw( get_hostitemnumbers_of ); |
| 38 |
use C4::Koha qw( getitemtypeimagelocation ); |
38 |
use C4::Koha qw( getitemtypeimagelocation ); |
| 39 |
use C4::Serials qw( CountSubscriptionFromBiblionumber ); |
39 |
use C4::Serials qw( CountSubscriptionFromBiblionumber ); |
|
Lines 772-778
if ( ( $findborrower && $borrowernumber_hold || $findclub && $club_hold )
Link Here
|
| 772 |
|
772 |
|
| 773 |
# Pass through any reserve charge |
773 |
# Pass through any reserve charge |
| 774 |
if ($patron) { |
774 |
if ($patron) { |
| 775 |
$biblioloopiter{reserve_charge} = GetReserveFee( $patron->borrowernumber, $biblionumber ); |
775 |
|
|
|
776 |
# Calculate hold fee using first available item |
| 777 |
my $reserve_charge = 0; |
| 778 |
if (@items) { |
| 779 |
foreach my $item_object (@items) { |
| 780 |
my $fee = $item_object->holds_fee($patron); |
| 781 |
if ( defined $fee && $fee > 0 ) { |
| 782 |
$reserve_charge = $fee; |
| 783 |
last; |
| 784 |
} |
| 785 |
} |
| 786 |
} |
| 787 |
$biblioloopiter{reserve_charge} = $reserve_charge; |
| 776 |
} |
788 |
} |
| 777 |
|
789 |
|
| 778 |
if (@reserveloop) { |
790 |
if (@reserveloop) { |
|
Lines 807-813
unless ($multi_hold) {
Link Here
|
| 807 |
|
819 |
|
| 808 |
# Pass through any reserve charge for single holds |
820 |
# Pass through any reserve charge for single holds |
| 809 |
if ($borrowernumber_hold) { |
821 |
if ($borrowernumber_hold) { |
| 810 |
$template->param( reserve_charge => GetReserveFee( $borrowernumber_hold, $biblionumbers[0] ) ); |
822 |
my $patron = Koha::Patrons->find($borrowernumber_hold); |
|
|
823 |
my $reserve_charge = 0; |
| 824 |
if ( $patron && $biblio ) { |
| 825 |
my @items = $biblio->items->as_list; |
| 826 |
foreach my $item (@items) { |
| 827 |
my $fee = $item->holds_fee($patron); |
| 828 |
if ( defined $fee && $fee > 0 ) { |
| 829 |
$reserve_charge = $fee; |
| 830 |
last; |
| 831 |
} |
| 832 |
} |
| 833 |
} |
| 834 |
$template->param( reserve_charge => $reserve_charge ); |
| 811 |
} |
835 |
} |
| 812 |
} |
836 |
} |
| 813 |
$template->param( biblionumbers => \@biblionumbers ); |
837 |
$template->param( biblionumbers => \@biblionumbers ); |
| 814 |
- |
|
|