@@ -, +, @@ CanBookBeReserved --- C4/Reserves.pm | 9 +-------- t/db_dependent/Holds.t | 4 ++-- 2 files changed, 3 insertions(+), 10 deletions(-) --- a/C4/Reserves.pm +++ a/C4/Reserves.pm @@ -325,15 +325,8 @@ See CanItemBeReserved() for possible return values. sub CanBookBeReserved{ my ($borrowernumber, $biblionumber) = @_; - # Check if borrower already has reserved the same biblio. - my @reserves = GetReservesFromBorrowernumber($borrowernumber); - foreach my $reserve (@reserves) { - if ($reserve->{biblionumber} == $biblionumber) { - return 'alreadyReserved'; - } - } - # Check if borrower has reached the maximum number of holds allowed + my @reserves = GetReservesFromBorrowernumber($borrowernumber); my $maxreserves = C4::Context->preference('maxreserves'); if ($maxreserves && scalar(@reserves) >= $maxreserves) { return 'tooManyReserves'; --- a/t/db_dependent/Holds.t +++ a/t/db_dependent/Holds.t @@ -397,10 +397,10 @@ ok( "cannot request item if policy that matches on bib-level item type forbids it (bug 9532)" ); -is(CanBookBeReserved($borrowernumbers[0], $bibnum), 'alreadyReserved'); +is(CanBookBeReserved($borrowernumbers[0], $bibnum), 'none_available'); C4::Context->set_preference('maxreserves', 1); -ok(CanBookBeReserved($borrowernumbers[0], $biblionumber) eq 'tooManyReserves'); +is(CanBookBeReserved($borrowernumbers[0], $biblionumber), 'tooManyReserves'); C4::Context->set_preference('maxreserves', 0); t::lib::Mocks::mock_preference('IndependentBranches', 1); --