[freeside-commits] branch master updated. 60c34bd328a404008313d4ab78d25152ebdb9226

Christopher Burger burgerc at freeside.biz
Tue May 15 07:20:19 PDT 2018


The branch, master has been updated
       via  60c34bd328a404008313d4ab78d25152ebdb9226 (commit)
       via  c0a48dabc8d0d2a66dc6a596a66c9d40c7d37489 (commit)
       via  1ef463d50def1a8af49a8687ae4fc53f40311ab4 (commit)
      from  780141c7e972a8b55212515049bf3d51ef590466 (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 60c34bd328a404008313d4ab78d25152ebdb9226
Author: Christopher Burger <burgerc at freeside.biz>
Date:   Tue May 15 10:19:33 2018 -0400

    RT# 77964 - Fixed error where deferring date did not work when waive setup fee was set.

diff --git a/FS/FS/cust_main/Billing.pm b/FS/FS/cust_main/Billing.pm
index 08b10c1ff..51b49e4f0 100644
--- a/FS/FS/cust_main/Billing.pm
+++ b/FS/FS/cust_main/Billing.pm
@@ -1052,6 +1052,11 @@ sub _make_lines {
         }
     }
 
+    if ($cust_pkg->waive_setup && $part_pkg->plan eq "prorate") {
+      $lineitems++;
+      $setup = 0 if $part_pkg->prorate_setup($cust_pkg, $time);
+    }
+
     if ( $cust_pkg->get('setup') ) {
       # don't change it
     } elsif ( $cust_pkg->get('start_date') ) {

commit c0a48dabc8d0d2a66dc6a596a66c9d40c7d37489
Author: Christopher Burger <burgerc at freeside.biz>
Date:   Tue May 15 09:52:34 2018 -0400

    Revert "RT# 77964 - fixed so deferring date now works when waive setup fee is set"
    
    This reverts commit 9cdd008acdaa19127409188b51e25fe8c8b0b04b.

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 {

commit 1ef463d50def1a8af49a8687ae4fc53f40311ab4
Author: Christopher Burger <burgerc at freeside.biz>
Date:   Tue May 15 09:52:08 2018 -0400

    Revert "RT# 77964 - Placed waive setup fee check back to billing.pm, and added check for prorate package in billing.pm"
    
    This reverts commit d263897b2b9247340901f93c57f44c7f85d87d37.

diff --git a/FS/FS/cust_main/Billing.pm b/FS/FS/cust_main/Billing.pm
index a5a38fdc2..44a4dbb04 100644
--- a/FS/FS/cust_main/Billing.pm
+++ b/FS/FS/cust_main/Billing.pm
@@ -1027,10 +1027,9 @@ sub _make_lines {
              || $cust_pkg->expire > $cmp_time )
      )
   {
-
+    
     warn "    bill setup\n" if $DEBUG > 1;
 
-    unless ($cust_pkg->waive_setup) {
         $lineitems++;
 
         $setup = eval { $cust_pkg->calc_setup( $time, \@details, \%setup_param ) };
@@ -1050,12 +1049,6 @@ sub _make_lines {
           $setup_billed_currency = delete $setup_param{'billed_currency'};
           $setup_billed_amount   = delete $setup_param{'billed_amount'};
         }
-    }
-
-    if ($cust_pkg->waive_setup && $part_pkg->plan eq "prorate") {
-      $lineitems++;
-      $setup = 0 if $part_pkg->prorate_setup($cust_pkg, $time);
-    }
 
     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 cfee58465..0bc3860a3 100644
--- a/FS/FS/part_pkg/flat.pm
+++ b/FS/FS/part_pkg/flat.pm
@@ -118,22 +118,26 @@ 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 ) {
-    $param->{'setup_charge'} = $charge;
-    $discount = $self->calc_discount($cust_pkg, $sdate, $details, $param);
-    delete $param->{'setup_charge'};
+    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;
 
 }
 

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

Summary of changes:
 FS/FS/cust_main/Billing.pm | 4 ++--
 FS/FS/part_pkg/flat.pm     | 7 +++----
 2 files changed, 5 insertions(+), 6 deletions(-)




More information about the freeside-commits mailing list