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

(-)a/C4/Biblio.pm (+4 lines)
Lines 2699-2704 sub _adjust_pubyear { Link Here
2699
    } elsif( $retval =~ m/(\d)[.Xx?]{3}|(\d\d)[.Xx?]{2}|(\d{3})[.Xx?]/ ) {
2699
    } elsif( $retval =~ m/(\d)[.Xx?]{3}|(\d\d)[.Xx?]{2}|(\d{3})[.Xx?]/ ) {
2700
        my $digits = $1 || $2 || $3;
2700
        my $digits = $1 || $2 || $3;
2701
        $retval = $digits * ( 10 ** ( 4 - length($digits) ));
2701
        $retval = $digits * ( 10 ** ( 4 - length($digits) ));
2702
    } elsif( $retval =~ m/(\d)[-]{3}\?|(\d\d)[-]{2}\?|(\d{3})[-]\?/ ) {
2703
        # the form 198-? occurred in Dutch ISBD rules
2704
        my $digits = $1 || $2 || $3;
2705
        $retval = $digits * ( 10 ** ( 4 - length($digits) ));
2702
    }
2706
    }
2703
    return $retval;
2707
    return $retval;
2704
}
2708
}
(-)a/t/db_dependent/Biblio/TransformMarcToKoha.t (-2 / +3 lines)
Lines 94-100 subtest 'Multiple mappings for one kohafield' => sub { Link Here
94
};
94
};
95
95
96
subtest 'Testing _adjust_pubyear' => sub {
96
subtest 'Testing _adjust_pubyear' => sub {
97
    plan tests => 8;
97
    plan tests => 10;
98
98
99
    is( C4::Biblio::_adjust_pubyear('2004 c2000 2007'), 2000, 'First cYEAR' );
99
    is( C4::Biblio::_adjust_pubyear('2004 c2000 2007'), 2000, 'First cYEAR' );
100
    is( C4::Biblio::_adjust_pubyear('2004 2000 2007'), 2004, 'First year' );
100
    is( C4::Biblio::_adjust_pubyear('2004 2000 2007'), 2004, 'First year' );
Lines 104-109 subtest 'Testing _adjust_pubyear' => sub { Link Here
104
    is( C4::Biblio::_adjust_pubyear('1...'), 1000, '1... on its own' );
104
    is( C4::Biblio::_adjust_pubyear('1...'), 1000, '1... on its own' );
105
    is( C4::Biblio::_adjust_pubyear('12?? 13xx'), 1200, '12?? first' );
105
    is( C4::Biblio::_adjust_pubyear('12?? 13xx'), 1200, '12?? first' );
106
    is( C4::Biblio::_adjust_pubyear('12? 1x'), '12? 1x', 'Too short' );
106
    is( C4::Biblio::_adjust_pubyear('12? 1x'), '12? 1x', 'Too short' );
107
    is( C4::Biblio::_adjust_pubyear('198-'), '198-', 'Missing question mark' );
108
    is( C4::Biblio::_adjust_pubyear('198-?'), '1980', '198-?' );
107
};
109
};
108
110
109
# Cleanup
111
# Cleanup
110
- 

Return to bug 11046