use C4::Output;
use C4::Auth;
-my $query = new CGI;
-my @biblionumber = $query->param('biblionumber');
-my $selectedshelf = $query->param('selectedshelf');
-my $newshelf = $query->param('newshelf');
-my $shelfnumber = $query->param('shelfnumber');
-my $newvirtualshelf = $query->param('newvirtualshelf');
-my $category = $query->param('category');
-my $authorized = 1;
-my $errcode = 0;
-my @biblios;
+our $query = new CGI;
+our @biblionumber = $query->param('biblionumber');
+our $selectedshelf = $query->param('selectedshelf');
+our $newshelf = $query->param('newshelf');
+our $shelfnumber = $query->param('shelfnumber');
+our $newvirtualshelf = $query->param('newvirtualshelf');
+our $category = $query->param('category');
+our $authorized = 1;
+our $errcode = 0;
+our @biblios;
-my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
+our ( $template, $loggedinuser, $cookie ) = get_template_and_user(
{
template_name => "opac-addbybiblionumber.tmpl",
query => $query,
sub HandleNewVirtualShelf {
if($authorized= ShelfPossibleAction($loggedinuser, undef, $category==1? 'new_private': 'new_public')) {
- $shelfnumber = AddShelf( {
+ $shelfnumber = AddShelf( {
shelfname => $newvirtualshelf,
category => $category }, $loggedinuser);
- if($shelfnumber == -1) {
- $authorized=0;
- $errcode=1;
- return;
- }
- AddBibliosToShelf($shelfnumber, @biblionumber);
- #Reload the page where you came from
- print $query->header;
- print "<html><meta http-equiv=\"refresh\" content=\"0\" /><body onload=\"window.opener.location.reload(true);self.close();\"></body></html>";
+ if($shelfnumber == -1) {
+ $authorized=0;
+ $errcode=1;
+ return;
+ }
+ AddBibliosToShelf($shelfnumber, @biblionumber);
+ #Reload the page where you came from
+ print $query->header;
+ print "<html><meta http-equiv=\"refresh\" content=\"0\" /><body onload=\"window.opener.location.reload(true);self.close();\"></body></html>";
}
}
sub HandleShelfNumber {
if($authorized= ShelfPossibleAction($loggedinuser, $shelfnumber, 'add')) {
- AddBibliosToShelf($shelfnumber,@biblionumber);
- #Close this page and return
- print $query->header;
- print "<html><meta http-equiv=\"refresh\" content=\"0\" /><body onload=\"self.close();\"></body></html>";
+ AddBibliosToShelf($shelfnumber,@biblionumber);
+ #Close this page and return
+ print $query->header;
+ print "<html><meta http-equiv=\"refresh\" content=\"0\" /><body onload=\"self.close();\"></body></html>";
}
}
sub HandleSelectedShelf {
if($authorized= ShelfPossibleAction( $loggedinuser, $selectedshelf, 'add')){
#adding to specific shelf
- my ($singleshelf, $singleshelfname, $singlecategory)= GetShelf($query->param('selectedshelf'));
+ my ($singleshelf, $singleshelfname)= GetShelf($query->param('selectedshelf'));
$template->param(
- singleshelf => 1,
- shelfnumber => $singleshelf,
- shelfname => $singleshelfname,
- "category$singlecategory" => 1
+ singleshelf => 1,
+ shelfnumber => $singleshelf,
+ shelfname => $singleshelfname,
);
}
}
my $privateshelves = GetAllShelves(1,$loggedinuser,1);
if(@{$privateshelves}){
$template->param (
- privatevirtualshelves => $privateshelves,
- existingshelves => 1
- );
+ privatevirtualshelves => $privateshelves,
+ existingshelves => 1
+ );
}
my $publicshelves = GetAllShelves(2,$loggedinuser,1);
if(@{$publicshelves}){
$template->param (
- publicvirtualshelves => $publicshelves,
- existingshelves => 1
- );
+ publicvirtualshelves => $publicshelves,
+ existingshelves => 1
+ );
}
}
sub LoadBib {
+ #see comment in AddBibliosToShelf
+ if (scalar(@biblionumber) == 1) {
+ @biblionumber = (split /\//,$biblionumber[0]);
+ }
for my $bib (@biblionumber) {
my $data = GetBiblioData( $bib );
- push(@biblios,
- { biblionumber => $bib,
- title => $data->{'title'},
- author => $data->{'author'},
- } );
+ push(@biblios,
+ { biblionumber => $bib,
+ title => $data->{'title'},
+ author => $data->{'author'},
+ } );
}
$template->param(
multiple => (scalar(@biblios) > 1),
- total => scalar @biblios,
- biblios => \@biblios,
+ total => scalar @biblios,
+ biblios => \@biblios,
);
}
sub ShowTemplate {
$template->param (
- newshelf => $newshelf||0,
- authorized => $authorized,
- errcode => $errcode,
- OpacAllowPublicListCreation => C4::Context->preference('OpacAllowPublicListCreation'),
+ newshelf => $newshelf||0,
+ authorized => $authorized,
+ errcode => $errcode,
+ OpacAllowPublicListCreation => C4::Context->preference('OpacAllowPublicListCreation'),
);
output_html_with_http_headers $query, $cookie, $template->output;
}