X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=acqui%2Fsupplier.pl;h=2d1a223454afd974e8308df7c3cd3fbdebaa134c;hb=c7a67ea4f33402a1f3165864952d6a692f898953;hp=0e2ab40302d681415b5764bcc4b9ca2b8aaaaeac;hpb=60186fa42fa0742eb3e8484f1fd4b16e04d32ae1;p=koha.git diff --git a/acqui/supplier.pl b/acqui/supplier.pl index 0e2ab40302..2d1a223454 100755 --- a/acqui/supplier.pl +++ b/acqui/supplier.pl @@ -6,18 +6,18 @@ # # 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 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 3 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. +# 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. +# You should have received a copy of the GNU General Public License +# along with Koha; if not, see . =head1 NAME @@ -43,23 +43,21 @@ To know the bookseller this script has to display details. use strict; use warnings; use C4::Auth; -use C4::Contract qw/GetContract/; +use C4::Contract; use C4::Biblio; use C4::Output; -use CGI; +use CGI qw ( -utf8 ); -use C4::Bookseller qw( GetBookSellerFromId DelBookseller ); +use C4::Bookseller qw( DelBookseller ); +use C4::Bookseller::Contact; use C4::Budgets; +use Koha::Acquisition::Bookseller; + my $query = CGI->new; -my $booksellerid = $query->param('booksellerid'); -my $supplier = {}; -if ($booksellerid) { - $supplier = GetBookSellerFromId($booksellerid); -} my $op = $query->param('op') || 'display'; my ( $template, $loggedinuser, $cookie ) = get_template_and_user( - { template_name => 'acqui/supplier.tmpl', + { template_name => 'acqui/supplier.tt', query => $query, type => 'intranet', authnotrequired => 0, @@ -67,47 +65,26 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user( debug => 1, } ); -my $seller_gstrate = $supplier->{'gstrate'}; +my $booksellerid = $query->param('booksellerid'); +my $supplier = {}; +if ($booksellerid) { + $supplier = Koha::Acquisition::Bookseller->fetch({ id => $booksellerid }); + foreach ( keys %{$supplier} ) { + $template->{'VARS'}->{$_} = $supplier->{$_}; + } + $template->{'VARS'}->{'booksellerid'} = $booksellerid; +} +$template->{'VARS'}->{'contacts'} = C4::Bookseller::Contact->new() unless $template->{'VARS'}->{'contacts'}; -# ensure the scalar isn't flagged as a string -$seller_gstrate = ( defined $seller_gstrate ) ? $seller_gstrate + 0 : undef; -my $tax_rate = $seller_gstrate // C4::Context->preference('gist') // 0; -$tax_rate *= 100; #build array for currencies if ( $op eq 'display' ) { - - my $contracts = GetContract( { booksellerid => $booksellerid } ); + my $contracts = GetContracts( { booksellerid => $booksellerid } ); $template->param( - booksellerid => $booksellerid, - name => $supplier->{'name'}, - postal => $supplier->{'postal'}, - address1 => $supplier->{'address1'}, - address2 => $supplier->{'address2'}, - address3 => $supplier->{'address3'}, - address4 => $supplier->{'address4'}, - phone => $supplier->{'phone'}, - accountnumber => $supplier->{'accountnumber'}, - fax => $supplier->{'fax'}, - url => $supplier->{'url'}, - contact => $supplier->{'contact'}, - contpos => $supplier->{'contpos'}, - contphone => $supplier->{'contphone'}, - contaltphone => $supplier->{'contaltphone'}, - contfax => $supplier->{'contfax'}, - contemail => $supplier->{'contemail'}, - contnotes => $supplier->{'contnotes'}, - notes => $supplier->{'notes'}, active => $supplier->{'active'}, - gstreg => $supplier->{'gstreg'}, - listincgst => $supplier->{'listincgst'}, - invoiceincgst => $supplier->{'invoiceincgst'}, - discount => $supplier->{'discount'}, - deliverytime => $supplier->{deliverytime}, + gstrate => $supplier->{'gstrate'} + 0.0, invoiceprice => $supplier->{'invoiceprice'}, listprice => $supplier->{'listprice'}, - GST => $tax_rate, - default_tax => defined($seller_gstrate), basketcount => $supplier->{'basketcount'}, subscriptioncount => $supplier->{'subscriptioncount'}, contracts => $contracts, @@ -141,41 +118,18 @@ if ( $op eq 'display' ) { }; } - my $default_gst_rate = (C4::Context->preference('gist') * 100) || '0.0'; + # get option values from gist syspref + my @gst_values = map { + option => $_ + 0.0 + }, split( '\|', C4::Context->preference("gist") ); - my $gstrate = defined $supplier->{gstrate} ? $supplier->{gstrate} * 100 : ''; $template->param( - booksellerid => $booksellerid, - name => $supplier->{'name'}, - postal => $supplier->{'postal'}, - address1 => $supplier->{'address1'}, - address2 => $supplier->{'address2'}, - address3 => $supplier->{'address3'}, - address4 => $supplier->{'address4'}, - phone => $supplier->{'phone'}, - accountnumber=> $supplier->{'accountnumber'}, - fax => $supplier->{'fax'}, - url => $supplier->{'url'}, - contact => $supplier->{'contact'}, - contpos => $supplier->{'contpos'}, - contphone => $supplier->{'contphone'}, - contaltphone => $supplier->{'contaltphone'}, - contfax => $supplier->{'contfax'}, - contemail => $supplier->{'contemail'}, - contnotes => $supplier->{'contnotes'}, - notes => $supplier->{'notes'}, # set active ON by default for supplier add (id empty for add) active => $booksellerid ? $supplier->{'active'} : 1, - gstreg => $supplier->{'gstreg'}, - listincgst => $supplier->{'listincgst'}, - invoiceincgst => $supplier->{'invoiceincgst'}, - gstrate => $gstrate, - discount => $supplier->{'discount'}, - deliverytime => $supplier->{deliverytime}, + gstrate => $supplier->{gstrate} ? $supplier->{'gstrate'}+0.0 : 0, + gst_values => \@gst_values, loop_currency => $loop_currency, - GST => $tax_rate, enter => 1, - default_gst_rate => $default_gst_rate, ); }