GetItemsInfo
GetItemsLocationInfo
GetHostItemsInfo
+ GetItemnumbersForBiblio
get_itemnumbers_of
get_hostitemnumbers_of
GetItemnumberFromBarcode
return @results;
}
+=head2 GetItemnumbersForBiblio
+
+ my $itemnumbers = GetItemnumbersForBiblio($biblionumber);
+
+Given a single biblionumber, return an arrayref of all the corresponding itemnumbers
+
+=cut
+
+sub GetItemnumbersForBiblio {
+ my $biblionumber = shift;
+ my @items;
+ my $dbh = C4::Context->dbh;
+ my $sth = $dbh->prepare("SELECT itemnumber FROM items WHERE biblionumber = ?");
+ $sth->execute($biblionumber);
+ while (my $result = $sth->fetchrow_hashref) {
+ push @items, $result->{'itemnumber'};
+ }
+ return \@items;
+}
+
=head2 get_itemnumbers_of
my @itemnumbers_of = get_itemnumbers_of(@biblionumbers);
sub CanBookBeReserved{
my ($borrowernumber, $biblionumber) = @_;
- my @items = get_itemnumbers_of($biblionumber);
+ my $items = GetItemnumbersForBiblio($biblionumber);
#get items linked via host records
my @hostitems = get_hostitemnumbers_of($biblionumber);
if (@hostitems){
- push (@items,@hostitems);
+ push (@$items,@hostitems);
}
- foreach my $item (@items){
+ foreach my $item (@$items){
return 1 if CanItemBeReserved($borrowernumber, $item);
}
return 0;