Lines 1109-1132
sub _get_marc_mapping_rules {
Link Here
|
1109 |
my @mappings = $self->_field_mappings($facet, $suggestible, $sort, $search, $name, $type, $range); |
1109 |
my @mappings = $self->_field_mappings($facet, $suggestible, $sort, $search, $name, $type, $range); |
1110 |
if ($field_tag < 10) { |
1110 |
if ($field_tag < 10) { |
1111 |
$rules->{control_fields}->{$field_tag} //= []; |
1111 |
$rules->{control_fields}->{$field_tag} //= []; |
1112 |
push @{$rules->{control_fields}->{$field_tag}}, @mappings; |
1112 |
push @{$rules->{control_fields}->{$field_tag}}, @{clone(\@mappings)}; |
1113 |
} |
1113 |
} |
1114 |
else { |
1114 |
else { |
1115 |
$rules->{data_fields}->{$field_tag} //= {}; |
1115 |
$rules->{data_fields}->{$field_tag} //= {}; |
1116 |
foreach my $subfield (@subfields) { |
1116 |
foreach my $subfield (@subfields) { |
1117 |
$rules->{data_fields}->{$field_tag}->{subfields}->{$subfield} //= []; |
1117 |
$rules->{data_fields}->{$field_tag}->{subfields}->{$subfield} //= []; |
1118 |
push @{$rules->{data_fields}->{$field_tag}->{subfields}->{$subfield}}, @mappings; |
1118 |
push @{$rules->{data_fields}->{$field_tag}->{subfields}->{$subfield}}, @{clone(\@mappings)}; |
1119 |
} |
1119 |
} |
1120 |
foreach my $subfield_group (@subfield_groups) { |
1120 |
foreach my $subfield_group (@subfield_groups) { |
1121 |
$rules->{data_fields}->{$field_tag}->{subfields_join}->{$subfield_group} //= []; |
1121 |
$rules->{data_fields}->{$field_tag}->{subfields_join}->{$subfield_group} //= []; |
1122 |
push @{$rules->{data_fields}->{$field_tag}->{subfields_join}->{$subfield_group}}, @mappings; |
1122 |
push @{$rules->{data_fields}->{$field_tag}->{subfields_join}->{$subfield_group}}, @{clone(\@mappings)}; |
1123 |
} |
1123 |
} |
1124 |
} |
1124 |
} |
1125 |
} |
1125 |
} |
1126 |
elsif ($marc_field =~ $leader_regexp) { |
1126 |
elsif ($marc_field =~ $leader_regexp) { |
1127 |
my $range = defined $1 ? $1 : undef; |
1127 |
my $range = defined $1 ? $1 : undef; |
1128 |
my @mappings = $self->_field_mappings($facet, $suggestible, $sort, $search, $name, $type, $range); |
1128 |
my @mappings = $self->_field_mappings($facet, $suggestible, $sort, $search, $name, $type, $range); |
1129 |
push @{$rules->{leader}}, @mappings; |
1129 |
push @{$rules->{leader}}, @{clone(\@mappings)}; |
1130 |
} |
1130 |
} |
1131 |
else { |
1131 |
else { |
1132 |
Koha::Exceptions::Elasticsearch::MARCFieldExprParseError->throw( |
1132 |
Koha::Exceptions::Elasticsearch::MARCFieldExprParseError->throw( |
1133 |
- |
|
|