Bug 17913: Run perltidy on the inner foreach loop

Kept the same number of lines.
You could verify with diff -w.

Test plan:
[1] Run t/db_dependent/Authorities/Merge.t
[2] As the last patch in this series, also test the interface:
    Set AuthorityMergeMode to loose. Set dontmerge to Do.
    Modify an authority record attached to multiple biblios.
    Edit a subfield, clear a subfield and add a subfield.
    Save. Wait a bit for the merge and Zebra update.
    Verify that the changes are merged properly into biblio records.
[3] Repeat step 2 with AuthorityMergeMode to strict.
    Remember that this affects the extra subfields in biblio records.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
This commit is contained in:
Marcel de Rooy 2017-01-17 11:59:53 +01:00 committed by Kyle M Hall
parent 28b74224d3
commit dd1c63230f

View file

@ -1473,45 +1473,45 @@ sub merge {
: { map { ( $_->[0], 1 ); } ( @record_from, @record_to ) };
foreach my $marcrecord(@reccache){
my $update = 0;
foreach my $tagfield (@$tags_using_authtype){
my $countfrom = 0; # used in strict mode to remove duplicates
foreach my $field ($marcrecord->field($tagfield)){
my $auth_number = $field->subfield("9"); # link to authority
my $tag=$field->tag();
foreach my $tagfield (@$tags_using_authtype) {
my $countfrom = 0; # used in strict mode to remove duplicates
foreach my $field ( $marcrecord->field($tagfield) ) {
my $auth_number = $field->subfield("9"); # link to authority
my $tag = $field->tag();
next if !defined($auth_number) || $auth_number ne $mergefrom;
$countfrom++;
if( $overwrite && $countfrom > 1 ) {
if ( $overwrite && $countfrom > 1 ) {
# remove this duplicate in strict mode
$marcrecord->delete_field( $field );
$marcrecord->delete_field($field);
$update = 1;
next;
}
my $newtag = $tags_new
? _merge_newtag( $tag, $tags_new )
: $tag;
my $field_to = MARC::Field->new(
$newtag,
$field->indicator(1),
$field->indicator(2),
"9" => $mergeto,
);
foreach my $subfield (grep {$_->[0] ne '9'} @record_to) {
$field_to->add_subfields($subfield->[0] =>$subfield->[1]);
? _merge_newtag( $tag, $tags_new )
: $tag;
my $field_to = MARC::Field->new(
$newtag,
$field->indicator(1),
$field->indicator(2),
"9" => $mergeto,
);
foreach my $subfield ( grep { $_->[0] ne '9' } @record_to ) {
$field_to->add_subfields( $subfield->[0] => $subfield->[1] );
}
if( !$overwrite ) {
if ( !$overwrite ) {
# add subfields back in loose mode, check skip_subfields
foreach my $subfield ( $field->subfields ) {
next if $skip_subfields->{ $subfield->[0] };
$field_to->add_subfields( $subfield->[0], $subfield->[1] );
}
}
if( $tags_new ) {
$marcrecord->delete_field( $field );
append_fields_ordered( $marcrecord, $field_to );
} else {
$field->replace_with($field_to);
}
$update=1;
if ($tags_new) {
$marcrecord->delete_field($field);
append_fields_ordered( $marcrecord, $field_to );
} else {
$field->replace_with($field_to);
}
$update = 1;
}
}
my ($bibliotag,$bibliosubf) = GetMarcFromKohaField("biblio.biblionumber","") ;