-my $delflag = 0;
-
-SWITCH: {
- if ( $op ) {
- unless ($okmanage) {
- push @paramsloop, {nopermission=>$shelfnumber};
- last SWITCH;
- }
- if ( $op eq 'modifsave' ) {
- my $shelf = {
- 'shelfname' => $query->param('shelfname'),
- 'category' => $query->param('category'),
- 'sortfield' => $query->param('sortfield'),
- };
-
- ModShelf( $shelfnumber, $shelf );
-
- } elsif ( $op eq 'modif' ) {
- my ( $shelfnumber2, $shelfname, $owner, $category, $sortfield ) =GetShelf( $shelfnumber );
- my $member = GetMember('borrowernumber'=>$owner);
- my $ownername = defined($member) ? $member->{firstname} . " " . $member->{surname} : '';
- $template->param(
- edit => 1,
- shelfnumber => $shelfnumber2,
- shelfname => $shelfname,
- owner => $owner,
- ownername => $ownername,
- "category$category" => 1,
- category => $category,
- "sort_$sortfield" => 1,
- );
- }
- last SWITCH;
- }
- if ($shelfnumber = $query->param('viewshelf') ) {
- #check that the user can view the shelf
- if ( ShelfPossibleAction( $loggedinuser, $shelfnumber, 'view' ) ) {
- my $items;
- my $authorsort;
- my $yearsort;
- my $sortfield = ($query->param('sortfield') ? $query->param('sortfield') : 'title');
- if ($sortfield eq 'author') {
- $authorsort = 'author';
- }
- if ($sortfield eq 'year'){
- $yearsort = 'year';
- }
- ($items, $totitems) = GetShelfContents($shelfnumber, $shelflimit, $shelfoffset);
- for my $this_item (@$items) {
- my $record = GetMarcBiblio($this_item->{'biblionumber'});
- # the virtualshelfcontents table does not store these columns nor are they retrieved from the items
- # and itemtypes tables, so I'm commenting them out for now to quiet the log -crn
- #$this_item->{imageurl} = $imgdir."/".$itemtypes->{ $this_item->{itemtype} }->{'imageurl'};
- #$this_item->{'description'} = $itemtypes->{ $this_item->{itemtype} }->{'description'};
- $this_item->{'dateadded'} = format_date($this_item->{'dateadded'});
- $this_item->{'imageurl'} = getitemtypeinfo($this_item->{'itemtype'})->{'imageurl'};
- $this_item->{'coins'} = GetCOinSBiblio($this_item->{'biblionumber'});
- $this_item->{'subtitle'} = C4::Biblio::get_koha_field_from_marc('bibliosubtitle', 'subtitle', $record, '');
-
- # Getting items infos for location display
- my @items_infos = &GetItemsInfo($this_item->{'biblionumber'}, $type);
- $this_item->{'ITEM_RESULTS'} = \@items_infos;
-
- }
- push @paramsloop, {display => 'privateshelves'} if $category == 1;
- $showadd = 1;
- my $i = 0;
- my $manageshelf = ShelfPossibleAction( $loggedinuser, $shelfnumber, 'manage' );
- $template->param(
- shelfname => $shelflist->{$shelfnumber}->{'shelfname'} || $privshelflist->{$shelfnumber}->{'shelfname'},
- shelfnumber => $shelfnumber,
- viewshelf => $shelfnumber,
- authorsort => $authorsort,
- yearsort => $yearsort,
- manageshelf => $manageshelf,
- itemsloop => $items,
- );
- } else { push @paramsloop, {nopermission=>$shelfnumber} };
- last SWITCH;