Bug 24031: Add safety checks in Koha::Plugins::call
[koha.git] / serials / acqui-search-result.pl
blobede6c89a7b45d94d14f3fc38de77a85e9a446251
1 #!/usr/bin/perl
3 #script to show suppliers and orders
4 #written by chris@katipo.co.nz 23/2/2000
6 # Copyright 2000-2002 Katipo Communications
8 # This file is part of Koha.
10 # Koha is free software; you can redistribute it and/or modify it
11 # under the terms of the GNU General Public License as published by
12 # the Free Software Foundation; either version 3 of the License, or
13 # (at your option) any later version.
15 # Koha is distributed in the hope that it will be useful, but
16 # WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 # GNU General Public License for more details.
20 # You should have received a copy of the GNU General Public License
21 # along with Koha; if not, see <http://www.gnu.org/licenses>.
24 =head1 NAME
26 acqui-search-result.pl
28 =head1 DESCRIPTION
30 TODO
32 =head1 PARAMETERS
34 =over 4
36 =item supplier
38 =back
40 =cut
43 use Modern::Perl;
44 use C4::Auth;
45 use C4::Biblio;
46 use C4::Output;
47 use CGI qw ( -utf8 );
48 use C4::Acquisition qw( SearchOrders );
49 use Koha::DateUtils;
51 use Koha::Acquisition::Booksellers;
53 my $query=new CGI;
54 my ($template, $loggedinuser, $cookie)
55 = get_template_and_user({template_name => "serials/acqui-search-result.tt",
56 query => $query,
57 type => "intranet",
58 authnotrequired => 0,
59 flagsrequired => {serials => '*'},
60 debug => 1,
61 });
63 my $supplier=$query->param('supplier');
64 my @suppliers = Koha::Acquisition::Booksellers->search(
65 { name => { -like => "%$supplier%" } },
66 { order_by => { -asc => 'name' } } );
68 #build result page
69 my $loop_suppliers = [];
70 for my $s (@suppliers) {
71 my $orders = SearchOrders({
72 booksellerid => $s->id,
73 pending => 1
74 });
76 my $loop_basket = [];
77 for my $ord ( @{$orders} ) {
78 push @{$loop_basket}, {
79 basketno => $ord->{'basketno'},
80 total => $ord->{'count(*)'},
81 authorisedby => $ord->{'authorisedby'},
82 creationdate => output_pref( { str => $ord->{'creationdate'} } ),
83 closedate => output_pref( { str => $ord->{'closedate'} } ),
86 push @{$loop_suppliers}, {
87 loop_basket => $loop_basket,
88 aqbooksellerid => $s->id,
89 name => $s->name,
90 active => $s->active,
94 $template->param(loop_suppliers => $loop_suppliers,
95 supplier => $supplier,
96 count => scalar @suppliers);
98 output_html_with_http_headers $query, $cookie, $template->output;