summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Burger <burgerc@freeside.biz>2018-05-15 09:52:34 -0400
committerChristopher Burger <burgerc@freeside.biz>2018-05-15 09:52:34 -0400
commitc0a48dabc8d0d2a66dc6a596a66c9d40c7d37489 (patch)
tree0a949d679e32c608a6ec9541211d59fcf3fa8ebe
parent1ef463d50def1a8af49a8687ae4fc53f40311ab4 (diff)
Revert "RT# 77964 - fixed so deferring date now works when waive setup fee is set"
This reverts commit 9cdd008acdaa19127409188b51e25fe8c8b0b04b.
-rw-r--r--FS/FS/cust_main/Billing.pm2
-rw-r--r--FS/FS/part_pkg/flat.pm23
2 files changed, 11 insertions, 14 deletions
diff --git a/FS/FS/cust_main/Billing.pm b/FS/FS/cust_main/Billing.pm
index 44a4dbb04..08b10c1ff 100644
--- a/FS/FS/cust_main/Billing.pm
+++ b/FS/FS/cust_main/Billing.pm
@@ -1030,6 +1030,7 @@ sub _make_lines {
warn " bill setup\n" if $DEBUG > 1;
+ unless ( $cust_pkg->waive_setup ) {
$lineitems++;
$setup = eval { $cust_pkg->calc_setup( $time, \@details, \%setup_param ) };
@@ -1049,6 +1050,7 @@ sub _make_lines {
$setup_billed_currency = delete $setup_param{'billed_currency'};
$setup_billed_amount = delete $setup_param{'billed_amount'};
}
+ }
if ( $cust_pkg->get('setup') ) {
# don't change it
diff --git a/FS/FS/part_pkg/flat.pm b/FS/FS/part_pkg/flat.pm
index 0bc3860a3..6fd9c7d08 100644
--- a/FS/FS/part_pkg/flat.pm
+++ b/FS/FS/part_pkg/flat.pm
@@ -118,27 +118,22 @@ sub calc_setup {
return 0 if $self->prorate_setup($cust_pkg, $sdate);
- if (!$cust_pkg->waive_setup) {
- my $i = 0;
- my $count = $self->option( 'additional_count', 'quiet' ) || 0;
- while ($i < $count) {
- push @$details, $self->option( 'additional_info' . $i++ );
- }
+ my $i = 0;
+ my $count = $self->option( 'additional_count', 'quiet' ) || 0;
+ while ($i < $count) {
+ push @$details, $self->option( 'additional_info' . $i++ );
+ }
- my $charge = $self->base_setup($cust_pkg, $sdate, $details);
+ my $charge = $self->base_setup($cust_pkg, $sdate, $details);
- my $discount = 0;
- if ( $charge > 0 ) {
+ my $discount = 0;
+ if ( $charge > 0 ) {
$param->{'setup_charge'} = $charge;
$discount = $self->calc_discount($cust_pkg, $sdate, $details, $param);
delete $param->{'setup_charge'};
- }
-
- return sprintf( '%.2f', ($cust_pkg->quantity || 1) * ($charge - $discount) );
}
- return;
-
+ sprintf( '%.2f', ($cust_pkg->quantity || 1) * ($charge - $discount) );
}
sub base_setup {