From dec1338a03b7e1b82a68b39539a32b40f67066b7 Mon Sep 17 00:00:00 2001 From: Tomas Cohen Arazi Date: Mon, 22 Feb 2021 09:27:12 -0300 Subject: [PATCH] Bug 27071: (follow-up) Get rid of loop This patch gets rid of a loop on the librarary's groups siblings, and acknowledges ->get_hold_libraries returns a proper Koha::Libraries iterator that can be chained with a new query on the passed branchcode. This way we only fetch a count from the DB and no loop needs to take place on the code. To test: 1. Apply this patch 2. Run: $ kshell k$ prove t/db_dependent/Koha/Libraries.t => SUCCESS: Tests pass! 3. Sign off :-D Signed-off-by: Tomas Cohen Arazi Signed-off-by: David Nind Signed-off-by: Martin Renvoize --- Koha/Library.pm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Koha/Library.pm b/Koha/Library.pm index 8dcb2bb48b..c1ebd2f3ca 100644 --- a/Koha/Library.pm +++ b/Koha/Library.pm @@ -244,8 +244,8 @@ sub validate_hold_sibling { return 1 if $params->{branchcode} eq $self->id; my $branchcode = $params->{branchcode}; - my @hold_libraries = $self->get_hold_libraries; - return grep {$_->branchcode eq $branchcode} @hold_libraries; + return $self->get_hold_libraries->search( { branchcode => $branchcode } ) + ->count > 0; } =head2 Internal methods -- 2.20.1