@@ -, +, @@ - makes the Koha::RecordProcessor code more clear by removing the unnecessary newrecord variable. - revises the filter to be more clear about the expectation that operations are done directly on the record parameter. --------- --- Koha/Filter/MARC/ViewPolicy.pm | 12 ++---------- Koha/RecordProcessor.pm | 6 ++---- 2 files changed, 4 insertions(+), 14 deletions(-) --- a/Koha/Filter/MARC/ViewPolicy.pm +++ a/Koha/Filter/MARC/ViewPolicy.pm @@ -78,9 +78,8 @@ sub filter { push @records, $precord; } - my @results; foreach my $current_record (@records) { - my $result = $current_record->clone(); + my $result = $current_record; my $interface = $self->{options}->{interface} // 'opac'; my $frameworkcode = $self->{options}->{frameworkcode} // q{}; my $hide = _should_hide_on_interface(); @@ -103,15 +102,8 @@ sub filter { } ); } - push @results, $result; - } - - if ( scalar @results == 1 ) { - return $results[0]; - } - else { - return \@results; } + return; } sub _filter_field { --- a/Koha/RecordProcessor.pm +++ a/Koha/RecordProcessor.pm @@ -152,14 +152,12 @@ sub process { return unless defined $record; - my $newrecord = $record; - foreach my $filterobj (@{$self->filters}) { next unless $filterobj; - $newrecord = $filterobj->filter($newrecord); + $filterobj->filter($record); } - return $newrecord; + return $record; } sub DESTROY { --