Bug 10694: (follow-up) fix various issues
[koha.git] / acqui / modordernotes.pl
1 #!/usr/bin/perl
2
3 # Copyright 2011 BibLibre SARL
4 # This file is part of Koha.
5 #
6 # Koha is free software; you can redistribute it and/or modify it under the
7 # terms of the GNU General Public License as published by the Free Software
8 # Foundation; either version 2 of the License, or (at your option) any later
9 # version.
10 #
11 # Koha is distributed in the hope that it will be useful, but WITHOUT ANY
12 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
13 # A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
14 #
15 # You should have received a copy of the GNU General Public License along
16 # with Koha; if not, write to the Free Software Foundation, Inc.,
17 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18
19 =head1 NAME
20
21 modordernotes.pl
22
23 =head1 DESCRIPTION
24
25 Modify just notes when basket is closed.
26
27 =cut
28
29 use Modern::Perl;
30
31 use CGI;
32 use C4::Auth;
33 use C4::Output;
34 use C4::Acquisition;
35 use C4::Bookseller qw( GetBookSellerFromId);
36
37 my $input = new CGI;
38 my ($template, $loggedinuser, $cookie, $flags) = get_template_and_user( {
39     template_name   => 'acqui/modordernotes.tmpl',
40     query           => $input,
41     type            => 'intranet',
42     authnotrequired => 0,
43     flagsrequired   => { 'acquisition' => '*' },
44     debug           => 1,
45 } );
46
47 my $op = $input->param('op');
48 my $ordernumber = $input->param('ordernumber');
49 my $referrer = $input->param('referrer') || $input->referer();
50 my $type = $input->param('type');
51 my $order = GetOrder($ordernumber);
52 my $basket = GetBasket($order->{basketno});
53 my ($bookseller) = GetBookSellerFromId($basket->{booksellerid});
54
55
56 if($op and $op eq 'save') {
57     my $ordernotes = $input->param('ordernotes');
58     if ($type eq "vendor") {
59         $order->{'order_vendornote'} = $ordernotes;
60     } else {
61         $order->{'order_internalnote'} = $ordernotes;
62     }
63     ModOrder($order);
64     print $input->redirect($referrer);
65     exit;
66 } else {
67     if ($type eq "vendor") {
68         $template->param(ordernotes => $order->{'order_vendornote'});
69     } else {
70         $template->param(ordernotes => $order->{'order_internalnote'});
71     }
72 }
73
74 if($op) {
75     $template->param($op => 1);
76 }
77
78 $template->param(
79     basketname           => $basket->{'basketname'},
80     basketno             => $order->{basketno},
81     booksellerid         => $bookseller->{'id'},
82     booksellername       => $bookseller->{'name'},
83     ordernumber => $ordernumber,
84     referrer => $referrer,
85     type => $type,
86 );
87
88
89 output_html_with_http_headers $input, $cookie, $template->output;