use C4::Members;
use C4::Reserves;
-use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
-
-BEGIN {
- $VERSION = 2.11;
- require Exporter;
- @ISA = qw(Exporter);
- @EXPORT_OK = qw();
-}
+our $VERSION = 3.07.00.049;
=head1 EXAMPLE
if (! $item) {
syslog("LOG_DEBUG", "new ILS::Item('%s'): not found", $item_id);
warn "new ILS::Item($item_id) : No item '$item_id'.";
- return undef;
+ return;
}
$item->{ 'itemnumber' } = $itemnumber;
$item->{ 'id' } = $item->{barcode}; # to SIP, the barcode IS the id.
);
sub next_hold {
- my $self = shift or return;
+ my $self = shift;
# use Data::Dumper; warn "next_hold() hold_shelf: " . Dumper($self->{hold_shelf}); warn "next_hold() pending_queue: " . $self->{pending_queue};
foreach (@{$self->hold_shelf}) { # If this item was taken from the hold shelf, then that reserve still governs
next unless ($_->{itemnumber} and $_->{itemnumber} == $self->{itemnumber});
}
sub hold_patron_name {
- my $self = shift or return;
+ my $self = shift;
my $borrowernumber = (@_ ? shift: $self->hold_patron_id()) or return;
my $holder = GetMember(borrowernumber=>$borrowernumber);
unless ($holder) {
}
sub hold_patron_bcode {
- my $self = shift or return;
+ my $self = shift;
my $borrowernumber = (@_ ? shift: $self->hold_patron_id()) or return;
my $holder = GetMember(borrowernumber => $borrowernumber);
if ($holder) {
}
sub sip_security_marker {
+ my $self = shift;
return '02'; # FIXME? 00-other; 01-None; 02-Tattle-Tape Security Strip (3M); 03-Whisper Tape (3M)
}
sub sip_fee_type {
+ my $self = shift;
return '01'; # FIXME? 01-09 enumerated in spec. We just use O1-other/unknown.
}
return 0;
}
-sub _barcode_to_borrowernumber ($) {
+sub _barcode_to_borrowernumber {
my $known = shift;
- (defined($known)) or return undef;
- my $member = GetMember(cardnumber=>$known) or return undef;
+ return unless defined $known;
+ my $member = GetMember(cardnumber=>$known) or return;
return $member->{borrowernumber};
}
-sub barcode_is_borrowernumber ($$$) { # because hold_queue only has borrowernumber...
- my $self = shift; # not really used
+sub barcode_is_borrowernumber { # because hold_queue only has borrowernumber...
+ my $self = shift;
my $barcode = shift;
- my $number = shift or return undef; # can't be zero
- (defined($barcode)) or return undef; # might be 0 or 000 or 000000
- my $converted = _barcode_to_borrowernumber($barcode) or return undef;
- return ($number eq $converted); # even though both *should* be numbers, eq is safer.
+ my $number = shift or return; # can't be zero
+ return unless defined $barcode; # might be 0 or 000 or 000000
+ my $converted = _barcode_to_borrowernumber($barcode);
+ return unless $converted;
+ return ($number == $converted);
}
-sub fill_reserve ($$) {
+sub fill_reserve {
my $self = shift;
- my $hold = shift or return undef;
+ my $hold = shift or return;
foreach (qw(biblionumber borrowernumber reservedate)) {
- $hold->{$_} or return undef;
+ $hold->{$_} or return;
}
return ModReserveFill($hold);
}