[Koha-patches] [PATCH 32/78] supplier management changes
paul.poulain at biblibre.com
paul.poulain at biblibre.com
Thu May 28 18:32:42 CEST 2009
From: Paul Poulain <paul.poulain at biblibre.com>
* 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 4db98d6..b3ed949 100755
--- a/acqui/supplier.pl
+++ b/acqui/supplier.pl
@@ -2,9 +2,9 @@
#script to show display basket of orders
-#written by chris at 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 => "<option value=\"$currencies[$i]->{'currency'}\">$currencies[$i]->{'currency'}</option>"};
}
}
- $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 b801e1e..62ed3b0 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 == "") {
<!-- /TMPL_IF --></li><!-- /TMPL_IF -->
<li><label for="discount">Discount</label>
<input type="text" size="3" id="discount" name="discount" value="<!-- TMPL_VAR NAME="discount" -->" /> %</li>
+ <li><label for="gstrate">GST rate</label><input type="text" name="gstrate" id="gstrate" size="5" value="<!-- TMPL_VAR name="GST" -->"/>%</li>
<li><label for="notes">Notes</label>
<textarea cols="40" rows="4" id="notes" name="notes" ><!-- TMPL_VAR NAME="notes" --></textarea></li></ol>
<!-- TMPL_UNLESS NAME="GST" -->
@@ -199,10 +200,11 @@ if (f.company.value == "") {
<!-- TMPL_IF name= "invoiceincgst" -->Yes<!--TMPL_ELSE-->No<!-- /TMPL_IF --></p><!-- /TMPL_IF -->
<p><strong>Discount: </strong>
<!-- TMPL_VAR NAME="discount" --> %</p>
+ <p><strong>GST rate: </strong>
+ <!-- TMPL_VAR name="GST" -->%</p>
<!-- TMPL_IF NAME="notes" --><p><strong>Notes: </strong>
<!-- TMPL_VAR NAME="notes" --></p><!-- /TMPL_IF -->
</div>
-
<!--/TMPL_IF-->
</div>
--
1.6.0.4
More information about the Koha-patches
mailing list