Browse Source

Bug 6096 Correctly return arrayref from GetAllShelves

Follow on from bug 5529 GetAllShelves was also vaguely stuffing
an arrayref into an array
Some signs of cut and paste (unnecessary @params variable)
Calling code now does not have to shuffle the return about
to get the reference. Also removed a debug warn

Signed-off-by: fdurand <frederic.durand@univ-lyon2.fr>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
3.4.x
Colin Campbell 13 years ago
committed by Chris Cormack
parent
commit
c0655aabe4
  1. 17
      C4/VirtualShelves.pm
  2. 11
      opac/opac-addbybiblionumber.pl

17
C4/VirtualShelves.pm

@ -220,9 +220,9 @@ sub GetRecentShelves {
=head2 GetAllShelves
($shelflist) = GetAllShelves($owner)
$shelflist = GetAllShelves($owner)
This function returns a references to an array of hashrefs containing all shelves sorted
This function returns a reference to an array of hashrefs containing all shelves sorted
by the shelf name.
This function is intended to return a dataset reflecting all the shelves for
@ -230,15 +230,12 @@ the submitted parameters.
=cut
sub GetAllShelves ($$) {
sub GetAllShelves {
my ($category,$owner) = @_;
my (@shelflist);
my @params = ($category,$owner);
my $query = "SELECT * FROM virtualshelves WHERE category = ? AND owner = ? ORDER BY shelfname ASC";
my $sth = $dbh->prepare($query);
$sth->execute(@params);
@shelflist = $sth->fetchall_arrayref({});
return ( \@shelflist );
my $query = 'SELECT * FROM virtualshelves WHERE category = ? AND owner = ? ORDER BY shelfname ASC';
my $sth = $dbh->prepare( $query );
$sth->execute( $category, $owner );
return $sth->fetchall_arrayref({});
}
=head2 GetShelf

11
opac/opac-addbybiblionumber.pl

@ -98,19 +98,16 @@ else {
} else {
my $privateshelves = GetAllShelves(1,$loggedinuser);
my @privateshelves = @{$privateshelves};
warn scalar($privateshelves);
if(@privateshelves){
if(@{$privateshelves}){
$template->param (
privatevirtualshelves => @privateshelves,
privatevirtualshelves => $privateshelves,
existingshelves => 1
);
}
my $publicshelves = GetAllShelves(2,$loggedinuser);
my @publicshelves = @{$publicshelves};
if(@publicshelves){
if(@{$publicshelves}){
$template->param (
publicvirtualshelves => @publicshelves,
publicvirtualshelves => $publicshelves,
existingshelves => 1
);
}

Loading…
Cancel
Save