Lines 2677-2700
sub CanBookBeRenewed {
Link Here
|
2677 |
# can be filled with available items. We can get the union of the sets simply |
2677 |
# can be filled with available items. We can get the union of the sets simply |
2678 |
# by pushing all the elements onto an array and removing the duplicates. |
2678 |
# by pushing all the elements onto an array and removing the duplicates. |
2679 |
my @reservable; |
2679 |
my @reservable; |
2680 |
foreach my $b (@borrowernumbers) { |
2680 |
my %borrowers; |
2681 |
my ($borr) = C4::Members::GetMember( borrowernumber => $b); |
2681 |
ITEM: foreach my $i (@itemnumbers) { |
2682 |
foreach my $i (@itemnumbers) { |
2682 |
my $item = GetItem($i); |
2683 |
my $item = GetItem($i); |
2683 |
next if IsItemOnHoldAndFound($i); |
2684 |
if ( !IsItemOnHoldAndFound($i) |
2684 |
for my $b (@borrowernumbers) { |
2685 |
&& IsAvailableForItemLevelRequest( $item, $borr ) |
2685 |
my $borr = $borrowers{$b}//= C4::Members::GetMember(borrowernumber => $b); |
2686 |
&& CanItemBeReserved( $b, $i ) ) |
2686 |
next unless IsAvailableForItemLevelRequest($item, $borr); |
2687 |
{ |
2687 |
next unless CanItemBeReserved($b,$i); |
2688 |
push( @reservable, $i ); |
2688 |
|
|
|
2689 |
push @reservable, $i; |
2690 |
if (@reservable >= @borrowernumbers) { |
2691 |
$resfound = 0; |
2692 |
last ITEM; |
2689 |
} |
2693 |
} |
|
|
2694 |
last; |
2690 |
} |
2695 |
} |
2691 |
} |
2696 |
} |
2692 |
|
|
|
2693 |
@reservable = uniq(@reservable); |
2694 |
|
2695 |
if ( @reservable >= @borrowernumbers ) { |
2696 |
$resfound = 0; |
2697 |
} |
2698 |
} |
2697 |
} |
2699 |
} |
2698 |
} |
2700 |
return ( 0, "on_reserve" ) if $resfound; # '' when no hold was found |
2699 |
return ( 0, "on_reserve" ) if $resfound; # '' when no hold was found |
2701 |
- |
|
|