Bug 32279: Add GetAuthorizedHeading method export C4::AuthoritiesMarc

C4::AuthoritiesMarc method GetAuthorizedHeading is not exported thus it is called in other modules :
 > git grep GetAuthorizedHeading
C4/AuthoritiesMarc.pm:=head2 GetAuthorizedHeading
C4/AuthoritiesMarc.pm:  $heading = &GetAuthorizedHeading({ record => $record, authid => $authid })
C4/AuthoritiesMarc.pm:sub GetAuthorizedHeading {
C4/Breeding.pm:                            $heading = C4::AuthoritiesMarc::GetAuthorizedHeading({ record => $marcrecord });
C4/ImportBatch.pm:            $row->{'authorized_heading'} = C4::AuthoritiesMarc::GetAuthorizedHeading( { authid => $row->{'candidate_match_id'} } );
C4/ImportBatch.pm:    my $authorized_heading = C4::AuthoritiesMarc::GetAuthorizedHeading({ record => $marc_record });

This patch adds it to be exported.
For example for use in Koha plugins.

Test plan :
Check import of authorities from a file is OK

Signed-off-by: Phil Ringnalda <phil@chetcolibrary.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 2d0eca8a0d)
Signed-off-by: Jacob O'Mara <jacobomara901@gmail.com>
This commit is contained in:
Fridolin Somers 2022-11-18 17:36:47 -10:00 committed by Jacob O'Mara
parent 5c76bb0c4e
commit 6833e1b3f7
3 changed files with 6 additions and 5 deletions

View file

@ -53,6 +53,7 @@ BEGIN {
DelAuthority DelAuthority
GetAuthority GetAuthority
GetAuthorityXML GetAuthorityXML
GetAuthorizedHeading
SearchAuthorities SearchAuthorities

View file

@ -27,7 +27,7 @@ use C4::Charset qw( MarcToUTF8Record SetUTF8Flag );
use MARC::File::USMARC; use MARC::File::USMARC;
use MARC::Field; use MARC::Field;
use C4::ImportBatch qw( GetZ3950BatchId AddBiblioToBatch AddAuthToBatch ); use C4::ImportBatch qw( GetZ3950BatchId AddBiblioToBatch AddAuthToBatch );
use C4::AuthoritiesMarc qw( GuessAuthTypeCode ); use C4::AuthoritiesMarc qw( GuessAuthTypeCode GetAuthorizedHeading );
use C4::Languages; use C4::Languages;
use Koha::Database; use Koha::Database;
use Koha::XSLT::Base; use Koha::XSLT::Base;
@ -593,7 +593,7 @@ sub Z3950SearchAuth {
$heading_authtype_code = GuessAuthTypeCode($marcrecord); $heading_authtype_code = GuessAuthTypeCode($marcrecord);
next if ( not defined $heading_authtype_code ) ; next if ( not defined $heading_authtype_code ) ;
$heading = C4::AuthoritiesMarc::GetAuthorizedHeading({ record => $marcrecord }); $heading = GetAuthorizedHeading({ record => $marcrecord });
my $breedingid = ImportBreedingAuth( $marcrecord, $serverhost[$k], $encoding[$k], $heading ); my $breedingid = ImportBreedingAuth( $marcrecord, $serverhost[$k], $encoding[$k], $heading );
my %row_data; my %row_data;

View file

@ -32,7 +32,7 @@ use C4::Biblio qw(
); );
use C4::Items qw( AddItemFromMarc ModItemFromMarc ); use C4::Items qw( AddItemFromMarc ModItemFromMarc );
use C4::Charset qw( MarcToUTF8Record SetUTF8Flag StripNonXmlChars ); use C4::Charset qw( MarcToUTF8Record SetUTF8Flag StripNonXmlChars );
use C4::AuthoritiesMarc qw( AddAuthority GuessAuthTypeCode GetAuthorityXML ModAuthority DelAuthority ); use C4::AuthoritiesMarc qw( AddAuthority GuessAuthTypeCode GetAuthorityXML ModAuthority DelAuthority GetAuthorizedHeading );
use C4::MarcModificationTemplates qw( ModifyRecordWithTemplate ); use C4::MarcModificationTemplates qw( ModifyRecordWithTemplate );
use Koha::Items; use Koha::Items;
use Koha::SearchEngine; use Koha::SearchEngine;
@ -1508,7 +1508,7 @@ sub GetImportRecordMatches {
$sth->execute(); $sth->execute();
while (my $row = $sth->fetchrow_hashref) { while (my $row = $sth->fetchrow_hashref) {
if ($row->{'record_type'} eq 'auth') { if ($row->{'record_type'} eq 'auth') {
$row->{'authorized_heading'} = C4::AuthoritiesMarc::GetAuthorizedHeading( { authid => $row->{'candidate_match_id'} } ); $row->{'authorized_heading'} = GetAuthorizedHeading( { authid => $row->{'candidate_match_id'} } );
} }
next if ($row->{'record_type'} eq 'biblio' && not $row->{'biblionumber'}); next if ($row->{'record_type'} eq 'biblio' && not $row->{'biblionumber'});
push @$results, $row; push @$results, $row;
@ -1675,7 +1675,7 @@ sub _add_auth_fields {
if ($marc_record->field('001')) { if ($marc_record->field('001')) {
$controlnumber = $marc_record->field('001')->data(); $controlnumber = $marc_record->field('001')->data();
} }
my $authorized_heading = C4::AuthoritiesMarc::GetAuthorizedHeading({ record => $marc_record }); my $authorized_heading = GetAuthorizedHeading({ record => $marc_record });
my $dbh = C4::Context->dbh; my $dbh = C4::Context->dbh;
my $sth = $dbh->prepare("INSERT INTO import_auths (import_record_id, control_number, authorized_heading) VALUES (?, ?, ?)"); my $sth = $dbh->prepare("INSERT INTO import_auths (import_record_id, control_number, authorized_heading) VALUES (?, ?, ?)");
$sth->execute($import_record_id, $controlnumber, $authorized_heading); $sth->execute($import_record_id, $controlnumber, $authorized_heading);