From 22f14a7b6d45f3bf5ad57bd52203d4cdef724ce7 Mon Sep 17 00:00:00 2001 From: Marcel de Rooy Date: Tue, 15 Sep 2020 12:09:56 +0000 Subject: [PATCH] Bug 26464: Code correction in opac-main when news_id passed Theoretical change. If somehow the search would return more than one result, the code is wrong. The if test can be simplified: remove scalar and >0. We should not pass @array to one param. It would theoretically add wrong items or trigger an odd number warning. If it is only one, it is no problem. But it is buggy. Test plan: Pass an existing news_id to opac-main. Item visible? And pass a not-existing. Error message? Signed-off-by: Marcel de Rooy Signed-off-by: Katrin Fischer Signed-off-by: Jonathan Druart Signed-off-by: Jonathan Druart --- opac/opac-main.pl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/opac/opac-main.pl b/opac/opac-main.pl index b5a5b284e9..74755a05a5 100755 --- a/opac/opac-main.pl +++ b/opac/opac-main.pl @@ -64,8 +64,8 @@ my @all_koha_news; if (defined $news_id){ @all_koha_news = Koha::News->search({ idnew => $news_id, lang => { '!=', 'koha' } }); # get news that is not staff-only news - if (scalar @all_koha_news > 0){ - $template->param( news_item => @all_koha_news ); + if( @all_koha_news ) { # we only expect one btw + $template->param( news_item => $all_koha_news[0] ); } else { $template->param( single_news_error => 1 ); } -- 2.39.5