|
Lines 86-92
sub new {
Link Here
|
| 86 |
if (! $item) { |
86 |
if (! $item) { |
| 87 |
syslog("LOG_DEBUG", "new ILS::Item('%s'): not found", $item_id); |
87 |
syslog("LOG_DEBUG", "new ILS::Item('%s'): not found", $item_id); |
| 88 |
warn "new ILS::Item($item_id) : No item '$item_id'."; |
88 |
warn "new ILS::Item($item_id) : No item '$item_id'."; |
| 89 |
return undef; |
89 |
return; |
| 90 |
} |
90 |
} |
| 91 |
$item->{ 'itemnumber' } = $itemnumber; |
91 |
$item->{ 'itemnumber' } = $itemnumber; |
| 92 |
$item->{ 'id' } = $item->{barcode}; # to SIP, the barcode IS the id. |
92 |
$item->{ 'id' } = $item->{barcode}; # to SIP, the barcode IS the id. |
|
Lines 347-371
sub available {
Link Here
|
| 347 |
return 0; |
347 |
return 0; |
| 348 |
} |
348 |
} |
| 349 |
|
349 |
|
| 350 |
sub _barcode_to_borrowernumber ($) { |
350 |
sub _barcode_to_borrowernumber { |
| 351 |
my $known = shift; |
351 |
my $known = shift; |
| 352 |
(defined($known)) or return undef; |
352 |
return unless defined $known; |
| 353 |
my $member = GetMember(cardnumber=>$known) or return undef; |
353 |
my $member = GetMember(cardnumber=>$known) or return; |
| 354 |
return $member->{borrowernumber}; |
354 |
return $member->{borrowernumber}; |
| 355 |
} |
355 |
} |
| 356 |
sub barcode_is_borrowernumber ($$$) { # because hold_queue only has borrowernumber... |
356 |
sub barcode_is_borrowernumber { # because hold_queue only has borrowernumber... |
| 357 |
my $self = shift; # not really used |
357 |
my $self = shift; # not really used |
| 358 |
my $barcode = shift; |
358 |
my $barcode = shift; |
| 359 |
my $number = shift or return undef; # can't be zero |
359 |
my $number = shift or return; # can't be zero |
| 360 |
(defined($barcode)) or return undef; # might be 0 or 000 or 000000 |
360 |
return unless defined $barcode; # might be 0 or 000 or 000000 |
| 361 |
my $converted = _barcode_to_borrowernumber($barcode) or return undef; |
361 |
my $converted = _barcode_to_borrowernumber($barcode); |
| 362 |
return ($number eq $converted); # even though both *should* be numbers, eq is safer. |
362 |
return unless $converted; |
|
|
363 |
return ($number == $converted); |
| 363 |
} |
364 |
} |
| 364 |
sub fill_reserve ($$) { |
365 |
sub fill_reserve { |
| 365 |
my $self = shift; |
366 |
my $self = shift; |
| 366 |
my $hold = shift or return undef; |
367 |
my $hold = shift or return; |
| 367 |
foreach (qw(biblionumber borrowernumber reservedate)) { |
368 |
foreach (qw(biblionumber borrowernumber reservedate)) { |
| 368 |
$hold->{$_} or return undef; |
369 |
$hold->{$_} or return; |
| 369 |
} |
370 |
} |
| 370 |
return ModReserveFill($hold); |
371 |
return ModReserveFill($hold); |
| 371 |
} |
372 |
} |