[freeside-commits] branch master updated. 4551d052fce2c17e7c03e01ee66d2f91096f8649

Mark Wells mark at 420.am
Fri Apr 8 15:23:29 PDT 2016


The branch, master has been updated
       via  4551d052fce2c17e7c03e01ee66d2f91096f8649 (commit)
      from  760290ba5b4806fff25d52617df1fde2d00c914a (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 4551d052fce2c17e7c03e01ee66d2f91096f8649
Author: Mark Wells <mark at freeside.biz>
Date:   Fri Apr 8 15:20:05 2016 -0700

    prevent package change from starting the new package on hold, #38564

diff --git a/FS/FS/cust_pkg.pm b/FS/FS/cust_pkg.pm
index 1bd18e0..074a58c 100644
--- a/FS/FS/cust_pkg.pm
+++ b/FS/FS/cust_pkg.pm
@@ -2132,7 +2132,7 @@ sub change {
 
   my $time = time;
 
-  $hash{'setup'} = $time if $self->setup;
+  $hash{'setup'} = $time if $self->get('setup');
 
   $hash{'change_date'} = $time;
   $hash{"change_$_"}  = $self->$_()
@@ -2153,16 +2153,18 @@ sub change {
   my $unused_credit = 0;
   my $keep_dates = $opt->{'keep_dates'};
 
-  # Special case.  If the pkgpart is changing, and the customer is
-  # going to be credited for remaining time, don't keep setup, bill, 
-  # or last_bill dates, and DO pass the flag to cancel() to credit 
-  # the customer.
+  # Special case.  If the pkgpart is changing, and the customer is going to be
+  # credited for remaining time, don't keep setup, bill, or last_bill dates,
+  # and DO pass the flag to cancel() to credit the customer.  If the old
+  # package had a setup date, set the new package's setup to the package
+  # change date so that it has the same status as before.
   if ( $opt->{'pkgpart'} 
        and $opt->{'pkgpart'} != $self->pkgpart
        and $self->part_pkg->option('unused_credit_change', 1) ) {
     $unused_credit = 1;
     $keep_dates = 0;
-    $hash{$_} = '' foreach qw(setup bill last_bill);
+    $hash{'last_bill'} = '';
+    $hash{'bill'} = '';
   }
 
   if ( $keep_dates ) {

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

Summary of changes:
 FS/FS/cust_pkg.pm |   14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)




More information about the freeside-commits mailing list