return 'AuthHeader';
}
-=head2 get_all_authorities_iterator
-
- my $it = Koha::Authority->get_all_authorities_iterator();
-
-This will provide an iterator object that will, one by one, provide the
-Koha::Authority of each authority.
-
-The iterator is a Koha::MetadataIterator object.
-
-=cut
-
-sub get_all_authorities_iterator {
- my $database = Koha::Database->new();
- my $schema = $database->schema();
- my $rs =
- $schema->resultset('AuthHeader')->search( { marcxml => { '!=', undef } },
- { columns => [qw/ authid authtypecode marcxml /] } );
- my $next_func = sub {
- my $row = $rs->next();
- return undef if !$row;
- my $authid = $row->authid;
- my $authtypecode = $row->authtypecode;
- my $marcxml = $row->marcxml;
-
- my $record = eval {
- MARC::Record->new_from_xml(
- StripNonXmlChars($marcxml),
- 'UTF-8',
- (
- C4::Context->preference("marcflavour") eq "UNIMARC"
- ? "UNIMARCAUTH"
- : C4::Context->preference("marcflavour")
- )
- );
- };
- confess $@ if ($@);
- $record->encoding('UTF-8');
-
- # I'm not sure why we don't use the authtypecode from the database,
- # but this is how the original code does it.
- require C4::AuthoritiesMarc;
- $authtypecode = C4::AuthoritiesMarc::GuessAuthTypeCode($record);
-
- my $auth = __PACKAGE__->new( $record, $authid, $authtypecode );
-
- return $auth;
- };
- return Koha::MetadataIterator->new($next_func);
-}
-
1;