[freeside-commits] branch master updated. babcdb7e84d1d9ee1537b47e16c4e182f426f07b

Christopher Burger burgerc at freeside.biz
Fri Apr 20 09:09:14 PDT 2018


The branch, master has been updated
       via  babcdb7e84d1d9ee1537b47e16c4e182f426f07b (commit)
      from  b1ff95e68f17199e2289e1515e3a3b836cd195c8 (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 babcdb7e84d1d9ee1537b47e16c4e182f426f07b
Author: Christopher Burger <burgerc at freeside.biz>
Date:   Fri Apr 20 12:08:43 2018 -0400

    RT# 77964 - fixed so deferring date now works when waive late fee is set

diff --git a/FS/FS/cust_main/Billing.pm b/FS/FS/cust_main/Billing.pm
index 08b10c1ff..44a4dbb04 100644
--- a/FS/FS/cust_main/Billing.pm
+++ b/FS/FS/cust_main/Billing.pm
@@ -1030,7 +1030,6 @@ 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 ) };
@@ -1050,7 +1049,6 @@ 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 6fd9c7d08..0bc3860a3 100644
--- a/FS/FS/part_pkg/flat.pm
+++ b/FS/FS/part_pkg/flat.pm
@@ -118,22 +118,27 @@ sub calc_setup {
 
   return 0 if $self->prorate_setup($cust_pkg, $sdate);
 
-  my $i = 0;
-  my $count = $self->option( 'additional_count', 'quiet' ) || 0;
-  while ($i < $count) {
-    push @$details, $self->option( 'additional_info' . $i++ );
-  }
+  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 $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) );
   }
 
-  sprintf( '%.2f', ($cust_pkg->quantity || 1) * ($charge - $discount) );
+  return;
+
 }
 
 sub base_setup {

-----------------------------------------------------------------------

Summary of changes:
 FS/FS/cust_main/Billing.pm |  2 --
 FS/FS/part_pkg/flat.pm     | 23 ++++++++++++++---------
 2 files changed, 14 insertions(+), 11 deletions(-)




More information about the freeside-commits mailing list