summaryrefslogtreecommitdiff
path: root/FS
diff options
context:
space:
mode:
authorivan <ivan>2002-07-03 03:47:40 +0000
committerivan <ivan>2002-07-03 03:47:40 +0000
commit2c9b97801b3981efaf6c65118e3cc1a0368e649c (patch)
tree538401050aac5124e4925fa7a6c8f3722fc56a67 /FS
parente1ef1693e6942bbf82ee088f782d871a3b5eefee (diff)
one-time charges with tax classes
Diffstat (limited to 'FS')
-rw-r--r--FS/FS/cust_main.pm12
1 files changed, 8 insertions, 4 deletions
diff --git a/FS/FS/cust_main.pm b/FS/FS/cust_main.pm
index 9ed3f2cab..6edb6ae8f 100644
--- a/FS/FS/cust_main.pm
+++ b/FS/FS/cust_main.pm
@@ -1734,7 +1734,7 @@ sub credit {
$cust_credit->insert;
}
-=item charge AMOUNT PKG COMMENT
+=item charge AMOUNT [ PKG [ COMMENT [ TAXCLASS ] ] ]
Creates a one-time charge for this customer. If there is an error, returns
the error, otherwise returns false.
@@ -1742,7 +1742,10 @@ the error, otherwise returns false.
=cut
sub charge {
- my ( $self, $amount, $pkg, $comment ) = @_;
+ my ( $self, $amount ) = @_;
+ my $pkg = @_ ? shift : 'One-time charge';
+ my $comment = @_ ? shift : '$'. sprintf("%.2f",$amount);
+ my $taxclass = @_ ? shift : '';
local $SIG{HUP} = 'IGNORE';
local $SIG{INT} = 'IGNORE';
@@ -1756,12 +1759,13 @@ sub charge {
my $dbh = dbh;
my $part_pkg = new FS::part_pkg ( {
- 'pkg' => $pkg || 'One-time charge',
- 'comment' => $comment || '$'. sprintf("%.2f",$amount),
+ 'pkg' => $pkg,
+ 'comment' => $comment,
'setup' => $amount,
'freq' => 0,
'recur' => '0',
'disabled' => 'Y',
+ 'taxclass' => $taxclass,
} );
my $error = $part_pkg->insert;