fix invoicing prorate packages when bill date is edited manually before first billing...
authorIvan Kohler <ivan@freeside.biz>
Fri, 26 Jul 2019 18:39:54 +0000 (11:39 -0700)
committerIvan Kohler <ivan@freeside.biz>
Fri, 26 Jul 2019 18:39:54 +0000 (11:39 -0700)
FS/FS/part_pkg/prorate_Mixin.pm

index af0181a..2b4b597 100644 (file)
@@ -189,8 +189,7 @@ set, in which case it postpones the next bill to the cutoff day.
 =cut
 
 sub prorate_setup {
-  my $self = shift;
-  my ($cust_pkg, $sdate) = @_;
+  my ($self, $cust_pkg, $time) = @_;
   my @cutoff_days = $self->cutoff_day($cust_pkg);
   if ( @cutoff_days and $self->option('prorate_defer_bill', 1) ) {
     if ( $cust_pkg->setup ) {
@@ -204,11 +203,11 @@ sub prorate_setup {
         # For some reason (probably user override), the bill date has been set even
         # though the package isn't billing yet. Start billing as though that was the
         # start date.
-        $$sdate = $cust_pkg->bill;
+        $time = $cust_pkg->bill;
         $cust_pkg->setup($cust_pkg->bill);
       }
       # Now figure the start and end of the period that contains the start date.
-      my ($mnow, $mend, $mstart) = $self->_endpoints($sdate, @cutoff_days);
+      my ($mnow, $mend, $mstart) = $self->_endpoints($time, @cutoff_days);
       # If today is the cutoff day, set the next bill and setup both to 
       # midnight today, so that the customer will be billed normally for a 
       # month starting today.