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')),
'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,
+ 'separate_bill' => scalar($cgi->param('separate_bill')),
);
} else { # the usual case: new one-time charge
: ''
),
'no_auto' => scalar($cgi->param('no_auto')),
+ 'separate_bill' => scalar($cgi->param('separate_bill')),
'pkg' => scalar($cgi->param('pkg')),
'setuptax' => scalar($cgi->param('setuptax')),
'taxclass' => scalar($cgi->param('taxclass')),