[freeside-commits] branch FREESIDE_3_BRANCH updated. 1d4ea4545c4a86a0664feb537f06aa5eb7f54c07
Alex Brelsfoard
alex at 420.am
Mon Feb 9 21:34:27 PST 2015
The branch, FREESIDE_3_BRANCH has been updated
via 1d4ea4545c4a86a0664feb537f06aa5eb7f54c07 (commit)
from 832199a6010883fff76e0dc5fa913b391b0177d7 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 1d4ea4545c4a86a0664feb537f06aa5eb7f54c07
Author: Alex Brelsfoard <alex at freeside.biz>
Date: Tue Feb 10 00:33:22 2015 -0500
RT #31482 you can now change the tax class when modifying a one-time charge.
diff --git a/FS/FS/cust_pkg.pm b/FS/FS/cust_pkg.pm
index 48cc187..b0cc2a3 100644
--- a/FS/FS/cust_pkg.pm
+++ b/FS/FS/cust_pkg.pm
@@ -2486,6 +2486,12 @@ sub modify_charge {
} # else simply ignore them; the UI shouldn't allow editing the fields
+ if ( exists($opt{'taxclass'})
+ and $part_pkg->taxclass ne $opt{'taxclass'}) {
+
+ $part_pkg->set('taxclass', $opt{'taxclass'});
+ }
+
my $error;
if ( $part_pkg->modified or $pkg_opt_modified ) {
# can we safely modify the package def?
diff --git a/httemplate/edit/process/quick-charge.cgi b/httemplate/edit/process/quick-charge.cgi
index c130a55..aa6010e 100644
--- a/httemplate/edit/process/quick-charge.cgi
+++ b/httemplate/edit/process/quick-charge.cgi
@@ -67,6 +67,18 @@ if ( $param->{'pkgnum'} =~ /^(\d+)$/ ) { #modifying an existing one-time charge
my $start_date = $cgi->param('start_date')
? parse_datetime($cgi->param('start_date'))
: time;
+
+ $param->{'tax_override'} =~ /^\s*([,\d]*)\s*$/
+ or $error .= "Illegal tax override " . $param->{"tax_override"} . " ";
+ my $override = $1;
+
+ if ( $param->{'taxclass'} eq '(select)' ) {
+ $error .= "Must select a tax class. "
+ unless ($conf->exists('enable_taxproducts') &&
+ ( $override || $param->{taxproductnum} )
+ );
+ $cgi->param('taxclass', '');
+ }
$error = $cust_pkg->modify_charge(
'pkg' => scalar($cgi->param('pkg')),
@@ -75,6 +87,10 @@ if ( $param->{'pkgnum'} =~ /^(\d+)$/ ) { #modifying an existing one-time charge
'adjust_commission' => ($cgi->param('adjust_commission') ? 1 : 0),
'amount' => $amount,
'setup_cost' => $setup_cost,
+ 'setuptax' => scalar($cgi->param('setuptax')),
+ 'taxclass' => scalar($cgi->param('taxclass')),
+ 'taxproductnum' => scalar($cgi->param('taxproductnum')),
+ 'tax_override' => $override,
'quantity' => $quantity,
'start_date' => $start_date,
);
diff --git a/httemplate/edit/quick-charge.html b/httemplate/edit/quick-charge.html
index 05a375a..64ee97b 100644
--- a/httemplate/edit/quick-charge.html
+++ b/httemplate/edit/quick-charge.html
@@ -171,6 +171,17 @@ function bill_now_changed (what) {
&>
% }
+% unless ($billed) {
+<TR>
+ <TD ALIGN="right"><% mt('Tax exempt') |h %> </TD>
+ <TD><INPUT TYPE="checkbox" NAME="setuptax" VALUE="Y" <% $cgi->param('setuptax') ? 'CHECKED' : '' %>></TD>
+</TR>
+
+<& /elements/tr-select-taxclass.html, 'curr_value' => $part_pkg->get('taxclass') &>
+
+<& /elements/tr-select-taxproduct.html, 'label' => emt('Tax product'), 'onclick' => 'parent.taxproductmagic(this);', 'curr_value' => $part_pkg->get('taxproductnum') &>
+% }
+
% } else { # new one-time charge
<TR>
-----------------------------------------------------------------------
Summary of changes:
FS/FS/cust_pkg.pm | 6 ++++++
httemplate/edit/process/quick-charge.cgi | 16 ++++++++++++++++
httemplate/edit/quick-charge.html | 11 +++++++++++
3 files changed, 33 insertions(+)
More information about the freeside-commits
mailing list