use Koha::AuthorisedValues;
use Koha::Biblios;
use Koha::DateUtils;
+use Koha::IssuingRules;
use Koha::Items;
use Koha::ItemTypes;
use Koha::Checkouts;
my $noreserves = 0;
my $maxoutstanding = C4::Context->preference("maxoutstanding");
$template->param( noreserve => 1 ) unless $maxoutstanding;
-my ( $amountoutstanding ) = GetMemberAccountRecords($borrowernumber);
+my $amountoutstanding = $patron->account->balance;
if ( $amountoutstanding && ($amountoutstanding > $maxoutstanding) ) {
my $amount = sprintf "%.02f", $amountoutstanding;
$template->param( message => 1 );
my $numCopiesOPACAvailable = 0;
foreach my $itemInfo (@{$biblioData->{itemInfos}}) {
my $itemNum = $itemInfo->{itemnumber};
+ my $item = Koha::Items->find( $itemNum );
my $itemLoopIter = {};
$itemLoopIter->{itemnumber} = $itemNum;
}
# checking reserve
- my $item = Koha::Items->find( $itemNum );
my $holds = $item->current_holds;
if ( my $first_hold = $holds->next ) {
- my $patron = Koha::Patrons->find( $first_hold->borrowernumber );
$itemLoopIter->{backgroundcolor} = 'reserved';
$itemLoopIter->{reservedate} = output_pref({ dt => dt_from_string($first_hold->reservedate), dateonly => 1 }); # FIXME Should be formatted in the template
- $itemLoopIter->{ReservedForBorrowernumber} = $first_hold->borrowernumber;
- $itemLoopIter->{ReservedForSurname} = $patron->surname;
- $itemLoopIter->{ReservedForFirstname} = $patron->firstname;
$itemLoopIter->{ExpectedAtLibrary} = $first_hold->branchcode;
$itemLoopIter->{waitingdate} = $first_hold->waitingdate;
}
CanItemBeReserved($borrowernumber,$itemNum) eq 'OK';
if ($policy_holdallowed) {
- if ( my $hold_allowed = OPACItemHoldsAllowed( $itemInfo, $patron_unblessed ) ) {
+ my $opac_hold_policy = Koha::IssuingRules->get_opacitemholds_policy( { item => $item, patron => $patron } );
+ if ( $opac_hold_policy ne 'N' ) { # If Y or F
$itemLoopIter->{available} = 1;
$numCopiesOPACAvailable++;
- $biblioLoopIter{force_hold} = 1 if $hold_allowed eq 'F';
+ $biblioLoopIter{force_hold} = 1 if $opac_hold_policy eq 'F';
}
$numCopiesAvailable++;