|
Lines 26-32
use C4::Circulation;
Link Here
|
| 26 |
use C4::Branch; |
26 |
use C4::Branch; |
| 27 |
use C4::Accounts; |
27 |
use C4::Accounts; |
| 28 |
use C4::Biblio; |
28 |
use C4::Biblio; |
| 29 |
use C4::Reserves qw(AddReserve CancelReserve GetReservesFromBiblionumber GetReservesFromBorrowernumber CanBookBeReserved CanItemBeReserved); |
29 |
use C4::Reserves qw(AddReserve CancelReserve GetReservesFromBiblionumber GetReservesFromBorrowernumber CanBookBeReserved CanItemBeReserved GetReserveNextRank); |
| 30 |
use C4::Context; |
30 |
use C4::Context; |
| 31 |
use C4::AuthoritiesMarc; |
31 |
use C4::AuthoritiesMarc; |
| 32 |
use C4::ILSDI::Utility; |
32 |
use C4::ILSDI::Utility; |
|
Lines 570-587
sub RenewLoan {
Link Here
|
| 570 |
return $out; |
570 |
return $out; |
| 571 |
} |
571 |
} |
| 572 |
|
572 |
|
| 573 |
sub _get_reserve_next_rank { |
|
|
| 574 |
my ($biblionumber) = @_; |
| 575 |
|
| 576 |
my ( $count, $reserves ) = GetReservesFromBiblionumber($biblionumber,1); |
| 577 |
foreach my $res (@$reserves) { |
| 578 |
$count-- if (defined $res->{found} and $res->{found} eq 'W'); |
| 579 |
} |
| 580 |
my $rank = $count + 1; |
| 581 |
|
| 582 |
return $rank; |
| 583 |
} |
| 584 |
|
| 585 |
=head2 HoldTitle |
573 |
=head2 HoldTitle |
| 586 |
|
574 |
|
| 587 |
Creates, for a borrower, a biblio-level hold reserve. |
575 |
Creates, for a borrower, a biblio-level hold reserve. |
|
Lines 632-638
sub HoldTitle {
Link Here
|
| 632 |
$branch = $$borrower{branchcode}; |
620 |
$branch = $$borrower{branchcode}; |
| 633 |
} |
621 |
} |
| 634 |
|
622 |
|
| 635 |
my $rank = _get_reserve_next_rank($biblionumber); |
623 |
my $rank = GetReserveNextRank($biblionumber); |
| 636 |
|
624 |
|
| 637 |
# Add the reserve |
625 |
# Add the reserve |
| 638 |
# $branch, $borrowernumber, $biblionumber, $constraint, $bibitems, $priority, $notes, $title, $checkitem, $found |
626 |
# $branch, $borrowernumber, $biblionumber, $constraint, $bibitems, $priority, $notes, $title, $checkitem, $found |
|
Lines 709-721
sub HoldItem {
Link Here
|
| 709 |
$branch = $$borrower{branchcode}; |
697 |
$branch = $$borrower{branchcode}; |
| 710 |
} |
698 |
} |
| 711 |
|
699 |
|
| 712 |
my $rank = _get_reserve_next_rank($biblionumber); |
700 |
my $rank; |
| 713 |
my $found; |
701 |
my $found; |
| 714 |
|
702 |
|
| 715 |
# Get rank and found |
703 |
# Get rank and found |
| 716 |
$rank = '0' unless C4::Context->preference('ReservesNeedReturns'); |
704 |
if (C4::Context->preference('ReservesNeedReturns')) { |
| 717 |
if ( $item->{'holdingbranch'} eq $branch ) { |
705 |
$rank = GetReserveNextRank($biblionumber); |
| 718 |
$found = 'W' unless C4::Context->preference('ReservesNeedReturns'); |
706 |
} else { |
|
|
707 |
$rank = '0'; |
| 708 |
if ($item->{'holdingbranch'} eq $branch) { |
| 709 |
$found = 'W'; |
| 710 |
} |
| 719 |
} |
711 |
} |
| 720 |
|
712 |
|
| 721 |
# Add the reserve |
713 |
# Add the reserve |