Bug 13223: [QA Follow-up] Adding some unit tests for wrapper
[koha.git] / serials / acqui-search-result.pl
1 #!/usr/bin/perl
2
3 #script to show suppliers and orders
4 #written by chris@katipo.co.nz 23/2/2000
5
6 # Copyright 2000-2002 Katipo Communications
7 #
8 # This file is part of Koha.
9 #
10 # Koha is free software; you can redistribute it and/or modify it under the
11 # terms of the GNU General Public License as published by the Free Software
12 # Foundation; either version 2 of the License, or (at your option) any later
13 # version.
14 #
15 # Koha is distributed in the hope that it will be useful, but WITHOUT ANY
16 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
17 # A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
18 #
19 # You should have received a copy of the GNU General Public License along
20 # with Koha; if not, write to the Free Software Foundation, Inc.,
21 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
22
23
24 =head1 NAME
25
26 acqui-search-result.pl
27
28 =head1 DESCRIPTION
29
30  TODO
31
32 =head1 PARAMETERS
33
34 =over 4
35
36 =item supplier
37
38 =back
39
40 =cut
41
42
43 use strict;
44 use warnings;
45 use C4::Auth;
46 use C4::Biblio;
47 use C4::Output;
48 use CGI;
49 use C4::Acquisition qw( SearchOrders );
50 use C4::Dates qw/format_date/;
51 use C4::Bookseller qw( GetBookSeller );
52
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                  });
62
63 my $supplier=$query->param('supplier');
64 my @suppliers = GetBookSeller($supplier);
65 #my $count = scalar @suppliers;
66
67 #build result page
68 my $loop_suppliers = [];
69 for my $s (@suppliers) {
70     my $orders = SearchOrders({
71         booksellerid => $s->{'id'},
72         pending => 1
73     });
74
75     my $loop_basket = [];
76     for my $ord ( @{$orders} ) {
77         push @{$loop_basket}, {
78             basketno     => $ord->{'basketno'},
79             total        => $ord->{'count(*)'},
80             authorisedby => $ord->{'authorisedby'},
81             creationdate => format_date($ord->{'creationdate'}),
82             closedate    => format_date($ord->{'closedate'}),
83         };
84     }
85     push @{$loop_suppliers}, {
86         loop_basket => $loop_basket,
87         aqbooksellerid => $s->{'id'},
88         name => $s->{'name'},
89         active => $s->{'active'},
90     };
91 }
92
93 $template->param(loop_suppliers => $loop_suppliers,
94                         supplier => $supplier,
95                         count => scalar @suppliers);
96
97 output_html_with_http_headers $query, $cookie, $template->output;