Bug 6679 - [SIGNED-OFF] fix 3 perlcritic violations in C4/Items.pm
[koha.git] / circ / view_holdsqueue.pl
1 #!/usr/bin/perl
2
3 # This file is part of Koha.
4 #
5 # Koha is free software; you can redistribute it and/or modify it under the
6 # terms of the GNU General Public License as published by the Free Software
7 # Foundation; either version 2 of the License, or (at your option) any later
8 # version.
9 #
10 # Koha is distributed in the hope that it will be useful, but WITHOUT ANY
11 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
12 # A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License along with
15 # Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
16 # Suite 330, Boston, MA  02111-1307 USA
17
18
19 =head1 view_holdsqueue
20
21 This script displays items in the tmp_holdsqueue table
22
23 =cut
24
25 use strict;
26 use warnings;
27 use CGI;
28 use C4::Auth;
29 use C4::Output;
30 use C4::Biblio;
31 use C4::Items;
32 use C4::Koha;   # GetItemTypes
33 use C4::Branch; # GetBranches
34 use C4::HoldsQueue qw(GetHoldsQueueItems);
35
36 my $query = new CGI;
37 my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
38     {
39         template_name   => "circ/view_holdsqueue.tmpl",
40         query           => $query,
41         type            => "intranet",
42         authnotrequired => 0,
43         flagsrequired   => { circulate => "circulate_remaining_permissions" },
44         debug           => 1,
45     }
46 );
47
48 my $params = $query->Vars;
49 my $run_report     = $params->{'run_report'};
50 my $branchlimit    = $params->{'branchlimit'};
51 my $itemtypeslimit = $params->{'itemtypeslimit'};
52
53 if ( $run_report ) {
54     # XXX GetHoldsQueueItems() does not support $itemtypeslimit!
55     my $items = GetHoldsQueueItems($branchlimit, $itemtypeslimit);
56     $template->param(
57         branch     => $branchlimit,
58         total      => scalar @$items,
59         itemsloop  => $items,
60         run_report => $run_report,
61         dateformat => C4::Context->preference("dateformat"),
62     );
63 }
64
65 # getting all itemtypes
66 my $itemtypes = &GetItemTypes();
67 my @itemtypesloop;
68 foreach my $thisitemtype ( sort keys %$itemtypes ) {
69     push @itemtypesloop, {
70         value       => $thisitemtype,
71         description => $itemtypes->{$thisitemtype}->{'description'},
72     };
73 }
74
75 $template->param(
76      branchloop => GetBranchesLoop(C4::Context->userenv->{'branch'}),
77    itemtypeloop => \@itemtypesloop,
78 );
79
80 # writing the template
81 output_html_with_http_headers $query, $cookie, $template->output;