X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=C4%2FBarcodes.pm;h=b08d660165e51b11e63d1d5d7b81b70eab97af63;hb=bc87274c66a50712dccb15656001d97f2a36fba5;hp=4a5fa1972c967b2e68d1e95e67eaf4dcd14ae13d;hpb=7183a241c4f696c0f7cea9868ee82573328fe98a;p=koha.git diff --git a/C4/Barcodes.pm b/C4/Barcodes.pm index 4a5fa1972c..b08d660165 100644 --- a/C4/Barcodes.pm +++ b/C4/Barcodes.pm @@ -28,6 +28,7 @@ use C4::Dates; use C4::Barcodes::hbyymmincr; use C4::Barcodes::annual; use C4::Barcodes::incremental; +use C4::Barcodes::EAN13; use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS); use vars qw($debug $cgi_debug); # from C4::Debug, of course @@ -54,7 +55,7 @@ sub initial { return '0000001'; } sub width { - return undef; + return; } sub process_head { # (self,head,whole,specific) my $self = shift; @@ -128,7 +129,7 @@ sub next_value { my ($head,$incr,$tail) = $self->parse($max); # for incremental, you'd get ('',the_whole_barcode,'') unless (defined $incr) { warn "No incrementing part of barcode ($max) returned by parse."; - return undef; + return; } my $x = length($incr); # number of digits $incr =~ /^9+$/ and $x++; # if they're all 9's, we need an extra. @@ -138,23 +139,23 @@ sub next_value { $debug and warn "$incr"; $head = $self->process_head($head,$max,$specific); - $tail = $self->process_tail($tail,$max,$specific); + $tail = $self->process_tail($tail,$incr,$specific); # XXX use $incr and not $max! my $next_value = $head . $incr . $tail; $debug and print STDERR "( next ) max barcode found: $next_value\n"; return $next_value; } sub next { - my $self = shift or return undef; + my $self = shift or return; (@_) and $self->{next} = shift; return $self->{next}; } sub previous { - my $self = shift or return undef; + my $self = shift or return; (@_) and $self->{previous} = shift; return $self->{previous}; } sub serial { - my $self = shift or return undef; + my $self = shift or return; (@_) and $self->{serial} = shift; return $self->{serial}; } @@ -177,6 +178,7 @@ our $types = { incremental => sub {C4::Barcodes::incremental->new_object(@_);}, hbyymmincr => sub {C4::Barcodes::hbyymmincr->new_object(@_); }, OFF => sub {C4::Barcodes::OFF->new_object(@_); }, + EAN13 => sub {C4::Barcodes::EAN13->new_object(@_); }, }; sub new { @@ -190,11 +192,11 @@ sub new { $autoBarcodeType =~ s/^.*:://; # in case we get C4::Barcodes::incremental, we just want 'incremental' unless ($autoBarcodeType) { carp "No autoBarcode format found."; - return undef; + return; } unless (defined $types->{$autoBarcodeType}) { carp "The autoBarcode format '$autoBarcodeType' is unrecognized."; - return undef; + return; } carp "autoBarcode format = $autoBarcodeType" if $debug; my $self; @@ -225,7 +227,7 @@ sub new { return $self; } carp "Failed new C4::Barcodes::$autoBarcodeType"; - return undef; + return; } sub new_object {