View | Details | Raw Unified | Return to bug 8071
Collapse All | Expand All

(-)a/C4/AuthoritiesMarc.pm (-1 / +1 lines)
Lines 1353-1359 sub merge { Link Here
1353
                if ($auth_number==$mergefrom) {
1353
                if ($auth_number==$mergefrom) {
1354
                my $field_to=MARC::Field->new(($tag_to?$tag_to:$tag),$field->indicator(1),$field->indicator(2),"9"=>$mergeto);
1354
                my $field_to=MARC::Field->new(($tag_to?$tag_to:$tag),$field->indicator(1),$field->indicator(2),"9"=>$mergeto);
1355
		my $exclude='9';
1355
		my $exclude='9';
1356
                foreach my $subfield (@record_to) {
1356
                foreach my $subfield (grep {$_->[0] ne 9} @record_to) {
1357
                    $field_to->add_subfields($subfield->[0] =>$subfield->[1]);
1357
                    $field_to->add_subfields($subfield->[0] =>$subfield->[1]);
1358
		    $exclude.= $subfield->[0];
1358
		    $exclude.= $subfield->[0];
1359
                }
1359
                }
(-)a/C4/Biblio.pm (-5 / +13 lines)
Lines 1675-1684 sub GetMarcSubjects { Link Here
1675
            if ( $counter != 0 ) {
1675
            if ( $counter != 0 ) {
1676
                $operator = ' and ';
1676
                $operator = ' and ';
1677
            }
1677
            }
1678
            if ( $code eq 9 ) {
1678
            if ( $code eq 9 and $linkvalue ne " 0 ") {
1679
                $found9 = 1;
1679
                $found9 = 1;
1680
                @link_loop = ( { 'limit' => 'an', link => "$linkvalue" } );
1680
                @link_loop = ( { 'limit' => 'an', link => "$linkvalue" } );
1681
            }
1681
            }
1682
            if ( $code eq 9 and $linkvalue eq " 0 ") {
1683
                next;
1684
            }
1682
            if ( not $found9 ) {
1685
            if ( not $found9 ) {
1683
                push @link_loop, { 'limit' => $subject_limit, link => $linkvalue, operator => $operator };
1686
                push @link_loop, { 'limit' => $subject_limit, link => $linkvalue, operator => $operator };
1684
            }
1687
            }
Lines 1734-1740 sub GetMarcAuthors { Link Here
1734
        my $count_auth = 0;
1737
        my $count_auth = 0;
1735
1738
1736
        # if there is an authority link, build the link with Koha-Auth-Number: subfield9
1739
        # if there is an authority link, build the link with Koha-Auth-Number: subfield9
1737
        my $subfield9 = $field->subfield('9');
1740
        my $found9 ;
1738
        for my $authors_subfield (@subfields) {
1741
        for my $authors_subfield (@subfields) {
1739
1742
1740
            # don't load unimarc subfields 3, 5
1743
            # don't load unimarc subfields 3, 5
Lines 1749-1757 sub GetMarcAuthors { Link Here
1749
            }
1752
            }
1750
1753
1751
            # if we have an authority link, use that as the link, otherwise use standard searching
1754
            # if we have an authority link, use that as the link, otherwise use standard searching
1752
            if ($subfield9) {
1755
            if ( $subfieldcode eq 9 and $linkvalue ne " 0 ") {
1753
                @link_loop = ( { 'limit' => 'an', link => "$subfield9" } );
1756
                $found9 = 1;
1754
            } else {
1757
                @link_loop = ( { 'limit' => 'an', link => "$linkvalue" } );
1758
            }
1759
            if ( not $found9 ) {
1760
                push @link_loop, { 'limit' => 'au', link => $linkvalue, operator => $operator };
1761
            }
1762
            unless ($found9){
1755
1763
1756
                # reset $linkvalue if UNIMARC author responsibility
1764
                # reset $linkvalue if UNIMARC author responsibility
1757
                if ( $marcflavour eq 'UNIMARC' and ( $authors_subfield->[0] eq "4" ) ) {
1765
                if ( $marcflavour eq 'UNIMARC' and ( $authors_subfield->[0] eq "4" ) ) {
(-)a/authorities/blinddetail-biblio-search.pl (-1 / +1 lines)
Lines 84-89 if ($authid) { Link Here
84
    # Get all values for each distinct subfield
84
    # Get all values for each distinct subfield
85
    my %subfields;
85
    my %subfields;
86
    for ( $field->subfields ) {
86
    for ( $field->subfields ) {
87
        next if $_->[0] == "9";
87
        my $letter = $_->[0];
88
        my $letter = $_->[0];
88
        next if defined $subfields{$letter};
89
        next if defined $subfields{$letter};
89
        my @values = $field->subfield($letter);
90
        my @values = $field->subfield($letter);
90
- 

Return to bug 8071