Koha/acqui/modordernotes.pl
Jonathan Druart 469f36d38f Bug 12896: Move the bookseller-related code into Koha::Acquisition::Bookseller
The C4::Acquisition module should be exploded in order to add
readability and maintainability to this part of the code.

This patch is a POC, it introduces a new Koha::Acquisition::Bookseller module and put in
it the code from GetBookSeller and GetBookSellerFromId.

Test plan:
1/ Create a bookseller, modify it.
2/ Add contacts for this bookseller
3/ Create an order, receive it, transfer it
4/ Launch the prove command on all unit tests modified by this patch and
verify that all pass.

Signed-off-by: Paola Rossi <paola.rossi@cineca.it>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
2014-12-31 14:15:58 -03:00

90 lines
2.5 KiB
Perl
Executable file

#!/usr/bin/perl
# Copyright 2011 BibLibre SARL
# This file is part of Koha.
#
# Koha is free software; you can redistribute it and/or modify it under the
# terms of the GNU General Public License as published by the Free Software
# Foundation; either version 2 of the License, or (at your option) any later
# version.
#
# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with Koha; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
=head1 NAME
modordernotes.pl
=head1 DESCRIPTION
Modify just notes when basket is closed.
=cut
use Modern::Perl;
use CGI;
use C4::Auth;
use C4::Output;
use C4::Acquisition;
use Koha::Acquisition::Bookseller;
my $input = new CGI;
my ($template, $loggedinuser, $cookie, $flags) = get_template_and_user( {
template_name => 'acqui/modordernotes.tt',
query => $input,
type => 'intranet',
authnotrequired => 0,
flagsrequired => { 'acquisition' => '*' },
debug => 1,
} );
my $op = $input->param('op');
my $ordernumber = $input->param('ordernumber');
my $referrer = $input->param('referrer') || $input->referer();
my $type = $input->param('type');
my $order = GetOrder($ordernumber);
my $basket = GetBasket($order->{basketno});
my $bookseller = Koha::Acquisition::Bookseller->fetch({ id => $basket->{booksellerid} });
if($op and $op eq 'save') {
my $ordernotes = $input->param('ordernotes');
if ($type eq "vendor") {
$order->{'order_vendornote'} = $ordernotes;
} else {
$order->{'order_internalnote'} = $ordernotes;
}
ModOrder($order);
print $input->redirect($referrer);
exit;
} else {
if ($type eq "vendor") {
$template->param(ordernotes => $order->{'order_vendornote'});
} else {
$template->param(ordernotes => $order->{'order_internalnote'});
}
}
if($op) {
$template->param($op => 1);
}
$template->param(
basketname => $basket->{'basketname'},
basketno => $order->{basketno},
booksellerid => $bookseller->{'id'},
booksellername => $bookseller->{'name'},
ordernumber => $ordernumber,
referrer => $referrer,
type => $type,
);
output_html_with_http_headers $input, $cookie, $template->output;