X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=Koha%2FMetadataRecord.pm;h=9899e164c713d6114f7b40ab0aaca98f9bdc0857;hb=9812c8b26e9886f0a7a79bbcefba1ac91ec7ed79;hp=1b2f4aa2f64486eafc05859fbf9df36b7a210c7a;hpb=3430e554cacfb31e9085fd2e209728662936dc3e;p=srvgit diff --git a/Koha/MetadataRecord.pm b/Koha/MetadataRecord.pm index 1b2f4aa2f6..9899e164c7 100644 --- a/Koha/MetadataRecord.pm +++ b/Koha/MetadataRecord.pm @@ -35,6 +35,7 @@ and authority) records in Koha. use Modern::Perl; use Carp; +use C4::Biblio; use Koha::Util::MARC; use base qw(Class::Accessor); @@ -112,12 +113,13 @@ sub getKohaField { my ($self, $kohafield) = @_; if ($self->schema =~ m/marc/) { - my $relations = C4::Context->marcfromkohafield->{''}; - my $tagfield = $relations->{$kohafield}; + my $frameworkcode = ""; # FIXME Why do we use the default framework? + my $mss = C4::Biblio::GetMarcSubfieldStructure( $frameworkcode ); + my $tagfield = $mss->{$kohafield}; - return '' if ref($tagfield) ne 'ARRAY'; + return '' if ref($tagfield) ne 'HASH'; - my ($tag, $subfield) = @$tagfield; + my ($tag, $subfield) = ( $tagfield->{tagfield}, $tagfield->{tagsubfield} ); my @kohafield; foreach my $field ( $self->record->field($tag) ) { if ( $field->tag() < 10 ) {