From 6f355a3cb44d887269e473145c9e4b0ee526be8c Mon Sep 17 00:00:00 2001
From: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Date: Fri, 17 Jan 2025 11:01:39 -0100
Subject: [PATCH] Bug 36197: (QA follow-up): Fix backends filtering in
 opac_available_backends

This was incorrectly keeping backends that don't support unauthenticated ILL requests if more than one existed.
---
 Koha/ILL/Request/Config.pm | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/Koha/ILL/Request/Config.pm b/Koha/ILL/Request/Config.pm
index 26df6630d33..204bfe8ab51 100644
--- a/Koha/ILL/Request/Config.pm
+++ b/Koha/ILL/Request/Config.pm
@@ -182,11 +182,12 @@ sub opac_available_backends {
     my $reduced  = C4::Context->preference('ILLOpacbackends');
     my $backends = $self->available_backends($reduced);
     if ( !$loggedinuser && C4::Context->preference('ILLOpacUnauthenticatedRequest') ) {
-        foreach my $backend ( @{$backends} ) {
-            my $loaded_b = Koha::ILL::Request->new->load_backend($backend);
-            @$backends = grep { !/$backend/ } @$backends
-                if ( $loaded_b->_backend_capability('opac_unauthenticated_ill_requests') == 0 );
-        }
+        $backends = [
+            grep {
+                my $loaded_b = Koha::ILL::Request->new->load_backend($_);
+                $loaded_b->_backend_capability('opac_unauthenticated_ill_requests')
+            } @$backends
+        ];
     }
     return $backends;
 }
-- 
2.39.5