From f807360373ab52754fd8fa812188367143e1a2a9 Mon Sep 17 00:00:00 2001 From: Paul Poulain Date: Tue, 28 Apr 2009 22:28:14 +0200 Subject: [PATCH] supplier management changes * deal with granular permissions * deal with GST at bookseller level --- acqui/supplier.pl | 167 +++++++++--------- .../prog/en/modules/acqui/supplier.tmpl | 4 +- 2 files changed, 90 insertions(+), 81 deletions(-) diff --git a/acqui/supplier.pl b/acqui/supplier.pl index 4db98d6a36..b3ed949771 100755 --- a/acqui/supplier.pl +++ b/acqui/supplier.pl @@ -2,9 +2,9 @@ #script to show display basket of orders -#written by chris@katipo.co.nz 24/2/2000 # Copyright 2000-2002 Katipo Communications +# Copyright 2008-2009 BibLibre SARL # # This file is part of Koha. # @@ -47,60 +47,63 @@ use C4::Biblio; use C4::Output; use CGI; - use C4::Bookseller; -use C4::Bookfund; +use C4::Budgets; -my $query=new CGI; -my $id=$query->param('supplierid'); +my $query = new CGI; +my $id = $query->param('supplierid'); my @booksellers = GetBookSellerFromId($id) if $id; -my $count = scalar @booksellers; -my $op=$query->param('op') || "display"; - -my ($template, $loggedinuser, $cookie) - = get_template_and_user({template_name => "acqui/supplier.tmpl", - query => $query, - type => "intranet", - authnotrequired => 0, - flagsrequired => {acquisition => 1}, - debug => 1, - }); - +my $count = scalar @booksellers; +my $op = $query->param('op') || "display"; +my ($template, $loggedinuser, $cookie) = get_template_and_user( + { template_name => "acqui/supplier.tmpl", + query => $query, + type => "intranet", + authnotrequired => 0, + flagsrequired => { acquisition => 'vendors_manage' }, + debug => 1, + } +); +my $GST = $booksellers[0]->{'gstrate'} || C4::Context->preference("gist"); +$GST *= 100; #build array for currencies -if ($op eq "display"){ - $template->param(id => $id, - name => $booksellers[0]->{'name'}, - postal =>$booksellers[0]->{'postal'}, - address1 => $booksellers[0]->{'address1'}, - address2 => $booksellers[0]->{'address2'}, - address3 => $booksellers[0]->{'address3'}, - address4 => $booksellers[0]->{'address4'}, - phone =>$booksellers[0]->{'phone'}, - fax => $booksellers[0]->{'fax'}, - url => $booksellers[0]->{'url'}, - contact => $booksellers[0]->{'contact'}, - contpos => $booksellers[0]->{'contpos'}, - contphone => $booksellers[0]->{'contphone'}, - contaltphone => $booksellers[0]->{'contaltphone'}, - contfax => $booksellers[0]->{'contfax'}, - contemail => $booksellers[0]->{'contemail'}, - contnotes => $booksellers[0]->{'contnotes'}, - notes => $booksellers[0]->{'notes'}, - active => $booksellers[0]->{'active'}, - specialty => $booksellers[0]->{'specialty'}, - gstreg => $booksellers[0]->{'gstreg'}, - listincgst => $booksellers[0]->{'listincgst'}, - invoiceincgst => $booksellers[0]->{'invoiceincgst'}, - discount => $booksellers[0]->{'discount'}, - invoiceprice=>$booksellers[0]->{'invoiceprice'}, - listprice=>$booksellers[0]->{'listprice'}, - GST => C4::Context->preference("gist"), - basketcount =>$booksellers[0]->{'basketcount'}, - ); -} elsif ($op eq 'delete') { - &DelBookseller($id); - print $query->redirect("/cgi-bin/koha/acqui/acqui-home.pl"); - exit; +if ($op eq "display") { + $template->param( + id => $id, + name => $booksellers[0]->{'name'}, + postal => $booksellers[0]->{'postal'}, + address1 => $booksellers[0]->{'address1'}, + address2 => $booksellers[0]->{'address2'}, + address3 => $booksellers[0]->{'address3'}, + address4 => $booksellers[0]->{'address4'}, + phone => $booksellers[0]->{'phone'}, + fax => $booksellers[0]->{'fax'}, + url => $booksellers[0]->{'url'}, + contact => $booksellers[0]->{'contact'}, + contpos => $booksellers[0]->{'contpos'}, + contphone => $booksellers[0]->{'contphone'}, + contaltphone => $booksellers[0]->{'contaltphone'}, + contfax => $booksellers[0]->{'contfax'}, + contemail => $booksellers[0]->{'contemail'}, + contnotes => $booksellers[0]->{'contnotes'}, + notes => $booksellers[0]->{'notes'}, + active => $booksellers[0]->{'active'}, + specialty => $booksellers[0]->{'specialty'}, + gstreg => $booksellers[0]->{'gstreg'}, + listincgst => $booksellers[0]->{'listincgst'}, + invoiceincgst => $booksellers[0]->{'invoiceincgst'}, + gstrate => $booksellers[0]->{'gstrate'}, + discount => $booksellers[0]->{'discount'}, + invoiceprice => $booksellers[0]->{'invoiceprice'}, + listprice => $booksellers[0]->{'listprice'}, + GST => $GST, + basketcount => $booksellers[0]->{'basketcount'}, + ); +} +elsif ($op eq 'delete') { + &DelBookseller($id); + print $query->redirect("/cgi-bin/koha/acqui/acqui-home.pl"); + exit; } else { my @currencies = GetCurrencies(); my $count = scalar @currencies; @@ -119,34 +122,38 @@ if ($op eq "display"){ push @loop_invoicecurrency, { currency => ""}; } } - $template->param(id => $id, - name => $booksellers[0]->{'name'}, - postal =>$booksellers[0]->{'postal'}, - address1 => $booksellers[0]->{'address1'}, - address2 => $booksellers[0]->{'address2'}, - address3 => $booksellers[0]->{'address3'}, - address4 => $booksellers[0]->{'address4'}, - phone =>$booksellers[0]->{'phone'}, - fax => $booksellers[0]->{'fax'}, - url => $booksellers[0]->{'url'}, - contact => $booksellers[0]->{'contact'}, - contpos => $booksellers[0]->{'contpos'}, - contphone => $booksellers[0]->{'contphone'}, - contaltphone => $booksellers[0]->{'contaltphone'}, - contfax => $booksellers[0]->{'contfax'}, - contemail => $booksellers[0]->{'contemail'}, - contnotes => $booksellers[0]->{'contnotes'}, - notes => $booksellers[0]->{'notes'}, - active => $booksellers[0]->{'active'}, - specialty => $booksellers[0]->{'specialty'}, - gstreg => $booksellers[0]->{'gstreg'}, - listincgst => $booksellers[0]->{'listincgst'}, - invoiceincgst => $booksellers[0]->{'invoiceincgst'}, - discount => $booksellers[0]->{'discount'}, - loop_pricescurrency => \@loop_pricescurrency, - loop_invoicecurrency => \@loop_invoicecurrency, - GST => C4::Context->preference("gist"), - enter=>1, - ); + my $GST = $booksellers[0]->{'gstrate'} || C4::Context->preference("gist"); + $GST *= 100; + $template->param( + id => $id, + name => $booksellers[0]->{'name'}, + postal => $booksellers[0]->{'postal'}, + address1 => $booksellers[0]->{'address1'}, + address2 => $booksellers[0]->{'address2'}, + address3 => $booksellers[0]->{'address3'}, + address4 => $booksellers[0]->{'address4'}, + phone => $booksellers[0]->{'phone'}, + fax => $booksellers[0]->{'fax'}, + url => $booksellers[0]->{'url'}, + contact => $booksellers[0]->{'contact'}, + contpos => $booksellers[0]->{'contpos'}, + contphone => $booksellers[0]->{'contphone'}, + contaltphone => $booksellers[0]->{'contaltphone'}, + contfax => $booksellers[0]->{'contfax'}, + contemail => $booksellers[0]->{'contemail'}, + contnotes => $booksellers[0]->{'contnotes'}, + notes => $booksellers[0]->{'notes'}, + active => $booksellers[0]->{'active'}, + specialty => $booksellers[0]->{'specialty'}, + gstreg => $booksellers[0]->{'gstreg'}, + listincgst => $booksellers[0]->{'listincgst'}, + invoiceincgst => $booksellers[0]->{'invoiceincgst'}, + gstrate => $booksellers[0]->{'gstrate'}, + discount => $booksellers[0]->{'discount'}, + loop_pricescurrency => \@loop_pricescurrency, + loop_invoicecurrency => \@loop_invoicecurrency, + GST => $GST, + enter => 1, + ); } output_html_with_http_headers $query, $cookie, $template->output; diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/supplier.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/supplier.tmpl index b801e1eb29..62ed3b090a 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/supplier.tmpl +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/supplier.tmpl @@ -132,6 +132,7 @@ if (f.company.value == "") {
  • " /> %
  • +
  • "/>%
  • @@ -199,10 +200,11 @@ if (f.company.value == "") { YesNo

    Discount: %

    +

    GST rate: + %

    Notes:

    - -- 2.39.5