Lines 61-67
use C4::External::Syndetics qw(
Link Here
|
61 |
use C4::Members; |
61 |
use C4::Members; |
62 |
use C4::XSLT qw( XSLTParse4Display ); |
62 |
use C4::XSLT qw( XSLTParse4Display ); |
63 |
use C4::ShelfBrowser qw( GetNearbyItems ); |
63 |
use C4::ShelfBrowser qw( GetNearbyItems ); |
64 |
use C4::Reserves qw( GetReserveStatus ); |
64 |
use C4::Reserves qw( GetReserveStatus IsAvailableForItemLevelRequest CanBookBeReserved ); |
65 |
use C4::Charset qw( SetUTF8Flag ); |
65 |
use C4::Charset qw( SetUTF8Flag ); |
66 |
use MARC::Field; |
66 |
use MARC::Field; |
67 |
use List::MoreUtils qw( any ); |
67 |
use List::MoreUtils qw( any ); |
Lines 671-677
if ( C4::Context->preference('OPACAcquisitionDetails' ) ) {
Link Here
|
671 |
}; |
671 |
}; |
672 |
} |
672 |
} |
673 |
|
673 |
|
674 |
my $allow_onshelf_holds; |
674 |
my $is_available; |
675 |
my ( $itemloop_has_images, $otheritemloop_has_images ); |
675 |
my ( $itemloop_has_images, $otheritemloop_has_images ); |
676 |
if ( not $viewallitems and $items->count > $max_items_to_display ) { |
676 |
if ( not $viewallitems and $items->count > $max_items_to_display ) { |
677 |
$template->param( |
677 |
$template->param( |
Lines 685-693
else {
Link Here
|
685 |
$item->{holds_count} = $item_reserves{ $item->itemnumber }; |
685 |
$item->{holds_count} = $item_reserves{ $item->itemnumber }; |
686 |
$item->{priority} = $priority{ $item->itemnumber }; |
686 |
$item->{priority} = $priority{ $item->itemnumber }; |
687 |
|
687 |
|
688 |
$allow_onshelf_holds = Koha::CirculationRules->get_onshelfholds_policy( |
688 |
$is_available = IsAvailableForItemLevelRequest($item, $patron, $currentbranch) |
689 |
{ item => $item, patron => $patron } ) |
689 |
unless $is_available; |
690 |
unless $allow_onshelf_holds; |
|
|
691 |
|
690 |
|
692 |
# get collection code description, too |
691 |
# get collection code description, too |
693 |
my $ccode = $item->ccode; |
692 |
my $ccode = $item->ccode; |
Lines 783-789
else {
Link Here
|
783 |
} |
782 |
} |
784 |
} |
783 |
} |
785 |
|
784 |
|
786 |
if( $allow_onshelf_holds || CountItemsIssued($biblionumber) || $biblio->has_items_waiting_or_intransit ) { |
785 |
my $canReserve = CanBookBeReserved($borrowernumber, $biblionumber, $currentbranch); |
|
|
786 |
if (!$borrowernumber || ($canReserve->{status} eq "OK" && $is_available)) { |
787 |
$template->param( ReservableItems => 1 ); |
787 |
$template->param( ReservableItems => 1 ); |
788 |
} |
788 |
} |
789 |
|
789 |
|
790 |
- |
|
|