my $newtag = $tags_new && @$tags_new
? _merge_newtag( $tag, $tags_new )
: $tag;
- my $controlled_ind = Koha::Authority->new({ authtypecode => $authtypeto ? $authtypeto->authtypecode : undef })->controlled_indicators({ record => $MARCto, biblio_tag => $newtag }); #FIXME Replace this tric with new when refactoring
+ my $controlled_ind = $authto->controlled_indicators({ record => $MARCto, biblio_tag => $newtag });
my $field_to = MARC::Field->new(
$newtag,
$controlled_ind->{ind1} // $field->indicator(1),
$self->marcxml, 'UTF-8', $flavour );
}
- my $authtype = Koha::Authority::Types->find( $self->authtypecode );
- return {} if !$authtype;
+ if( !$self->{_report_tag} ) {
+ my $authtype = Koha::Authority::Types->find( $self->authtypecode );
+ return {} if !$authtype; # very exceptional
+ $self->{_report_tag} = $authtype->auth_tag_to_report;
+ }
- return Koha::Authority::ControlledIndicators->new->get({
+ $self->{_ControlledInds} //= Koha::Authority::ControlledIndicators->new;
+ return $self->{_ControlledInds}->get({
auth_record => $record,
- report_tag => $authtype->auth_tag_to_report,
+ report_tag => $self->{_report_tag},
biblio_tag => $tag,
flavour => $flavour,
});