Lines 40-45
use C4::Tags qw(get_tags);
Link Here
|
40 |
use C4::Csv; |
40 |
use C4::Csv; |
41 |
use C4::XSLT; |
41 |
use C4::XSLT; |
42 |
|
42 |
|
|
|
43 |
use Koha::Virtualshelves; |
44 |
|
43 |
use constant VIRTUALSHELVES_COUNT => 20; |
45 |
use constant VIRTUALSHELVES_COUNT => 20; |
44 |
|
46 |
|
45 |
use vars qw($debug @EXPORT @ISA $VERSION); |
47 |
use vars qw($debug @EXPORT @ISA $VERSION); |
Lines 203-225
sub shelfpage {
Link Here
|
203 |
} |
205 |
} |
204 |
#Editing a shelf |
206 |
#Editing a shelf |
205 |
elsif ( $op eq 'modif' ) { |
207 |
elsif ( $op eq 'modif' ) { |
206 |
my ( $shelfnumber2, $shelfname, $owner, $category, $sortfield, $allow_add, $allow_delete_own, $allow_delete_other) = GetShelf($shelfnumber); |
208 |
my $shelf = Koha::Virtualshelves->find( $shelfnumber ); |
207 |
my $member = GetMember( 'borrowernumber' => $owner ); |
209 |
my $member = GetMember( 'borrowernumber' => $shelf->owner ); |
208 |
my $ownername = defined($member) ? $member->{firstname} . " " . $member->{surname} : ''; |
210 |
my $ownername = defined($member) ? $member->{firstname} . " " . $member->{surname} : ''; |
209 |
$edit = 1; |
211 |
$edit = 1; |
210 |
$template->param( |
212 |
$template->param( |
211 |
edit => 1, |
213 |
edit => 1, |
212 |
display => $displaymode, |
214 |
display => $displaymode, |
213 |
shelfnumber => $shelfnumber2, |
215 |
shelfnumber => $shelf->shelfnumber, |
214 |
shelfname => $shelfname, |
216 |
shelfname => $shelf->shelfname, |
215 |
owner => $owner, |
217 |
owner => $shelf->owner, |
216 |
ownername => $ownername, |
218 |
ownername => $ownername, |
217 |
"category$category" => 1, |
219 |
"category".$shelf->category => 1, |
218 |
category => $category, |
220 |
category => $shelf->category, |
219 |
sortfield => $sortfield, |
221 |
sortfield => $shelf->sortfield, |
220 |
allow_add => $allow_add, |
222 |
allow_add => $shelf->allow_add, |
221 |
allow_delete_own => $allow_delete_own, |
223 |
allow_delete_own => $shelf->allow_delete_own, |
222 |
allow_delete_other => $allow_delete_other, |
224 |
allow_delete_other => $shelf->allow_delete_other, |
223 |
); |
225 |
); |
224 |
} |
226 |
} |
225 |
last SWITCH; |
227 |
last SWITCH; |
Lines 227-235
sub shelfpage {
Link Here
|
227 |
|
229 |
|
228 |
#View a shelf |
230 |
#View a shelf |
229 |
if ( $shelfnumber = $query->param('viewshelf') ) { |
231 |
if ( $shelfnumber = $query->param('viewshelf') ) { |
230 |
# explicitly fetch this shelf |
232 |
my $shelf = Koha::Virtualshelves->find( $shelfnumber ); |
231 |
my ($shelfnumber2,$shelfname,$owner,$category,$sorton) = GetShelf($shelfnumber); |
|
|
232 |
|
233 |
$template->param( |
233 |
$template->param( |
234 |
'DisplayMultiPlaceHold' => C4::Context->preference('DisplayMultiPlaceHold'), |
234 |
'DisplayMultiPlaceHold' => C4::Context->preference('DisplayMultiPlaceHold'), |
235 |
); |
235 |
); |
Lines 243-249
sub shelfpage {
Link Here
|
243 |
if ( ShelfPossibleAction( $loggedinuser, $shelfnumber, 'view' ) ) { |
243 |
if ( ShelfPossibleAction( $loggedinuser, $shelfnumber, 'view' ) ) { |
244 |
my $items; |
244 |
my $items; |
245 |
my $tag_quantity; |
245 |
my $tag_quantity; |
246 |
my $sortfield = ( $sorton ? $sorton : 'title' ); |
246 |
my $sortfield = ( $shelf->sortfield ? $shelf->sortfield : 'title' ); |
247 |
$sortfield = $query->param('sort') || $sortfield; ## Passed in sorting overrides default sorting |
247 |
$sortfield = $query->param('sort') || $sortfield; ## Passed in sorting overrides default sorting |
248 |
my $direction = $query->param('direction') || 'asc'; |
248 |
my $direction = $query->param('direction') || 'asc'; |
249 |
$template->param( |
249 |
$template->param( |
Lines 313-325
sub shelfpage {
Link Here
|
313 |
addpubshelvesloop => $pubshelves, |
313 |
addpubshelvesloop => $pubshelves, |
314 |
); |
314 |
); |
315 |
} |
315 |
} |
316 |
push @paramsloop, { display => 'privateshelves' } if $category == 1; |
316 |
push @paramsloop, { display => 'privateshelves' } if $shelf->category == 1; |
317 |
$showadd = 1; |
317 |
$showadd = 1; |
318 |
my $i = 0; |
318 |
my $i = 0; |
319 |
my $manageshelf = ShelfPossibleAction( $loggedinuser, $shelfnumber, 'manage' ); |
319 |
my $manageshelf = ShelfPossibleAction( $loggedinuser, $shelfnumber, 'manage' ); |
320 |
my $can_delete_shelf = ShelfPossibleAction( $loggedinuser, $shelfnumber, 'delete_shelf' ); |
320 |
my $can_delete_shelf = ShelfPossibleAction( $loggedinuser, $shelfnumber, 'delete_shelf' ); |
321 |
$template->param( |
321 |
$template->param( |
322 |
shelfname => $shelfname, |
322 |
shelfname => $shelf->shelfname, |
323 |
shelfnumber => $shelfnumber, |
323 |
shelfnumber => $shelfnumber, |
324 |
viewshelf => $shelfnumber, |
324 |
viewshelf => $shelfnumber, |
325 |
sortfield => $sortfield, |
325 |
sortfield => $sortfield, |
Lines 327-336
sub shelfpage {
Link Here
|
327 |
allowremovingitems => ShelfPossibleAction( $loggedinuser, $shelfnumber, 'delete'), |
327 |
allowremovingitems => ShelfPossibleAction( $loggedinuser, $shelfnumber, 'delete'), |
328 |
allowaddingitem => ShelfPossibleAction( $loggedinuser, $shelfnumber, 'add'), |
328 |
allowaddingitem => ShelfPossibleAction( $loggedinuser, $shelfnumber, 'add'), |
329 |
allowdeletingshelf => $can_delete_shelf, |
329 |
allowdeletingshelf => $can_delete_shelf, |
330 |
"category$category" => 1, |
330 |
"category".$shelf->category => 1, |
331 |
category => $category, |
331 |
category => $shelf->category, |
332 |
itemsloop => $items, |
332 |
itemsloop => $items, |
333 |
showprivateshelves => $category==1, |
333 |
showprivateshelves => $shelf->category==1, |
334 |
); |
334 |
); |
335 |
} else { |
335 |
} else { |
336 |
push @paramsloop, { nopermission => $shelfnumber }; |
336 |
push @paramsloop, { nopermission => $shelfnumber }; |