Bug 33844: Fix is_denied_renewal

Going via result_set->has_column does cost actually nothing if
the object is already there.

Test plan:
Run again t/db_dependent/Koha/Item.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This commit is contained in:
Marcel de Rooy 2023-05-26 12:58:22 +00:00 committed by Tomas Cohen Arazi
parent 6264ecdad0
commit 2d28f7417c
Signed by: tomascohen
GPG key ID: 0A272EA1B2F3C15F

View file

@ -2065,6 +2065,8 @@ sub is_denied_renewal {
my $denyingrules = C4::Context->yaml_preference('ItemsDeniedRenewal');
return 0 unless $denyingrules;
foreach my $field (keys %$denyingrules) {
# Silently ignore bad column names; TODO we should validate elsewhere
next if !$self->_result->result_source->has_column($field);
my $val = $self->$field;
if( !defined $val) {
if ( any { !defined $_ } @{$denyingrules->{$field}} ){