diff options
author | Ivan Kohler <ivan@freeside.biz> | 2017-08-30 17:06:46 -0700 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2017-08-30 17:06:46 -0700 |
commit | 34636a1bc463209f1c43900d6e1a7c9626036edc (patch) | |
tree | d63cc7e3d7825aacf6cb5d4e4332037a9b8ccbf6 /FS/FS/part_pkg | |
parent | 7076cfd66dbb71b1577166f75875c091e6a67099 (diff) |
fix prorate_day without force_prorate_day for recur_Common packages configured as subscription or prorate, RT#77140, RT#38191
Diffstat (limited to 'FS/FS/part_pkg')
-rw-r--r-- | FS/FS/part_pkg/recur_Common.pm | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/FS/FS/part_pkg/recur_Common.pm b/FS/FS/part_pkg/recur_Common.pm index 4ed83a4..729fb61 100644 --- a/FS/FS/part_pkg/recur_Common.pm +++ b/FS/FS/part_pkg/recur_Common.pm @@ -43,12 +43,17 @@ sub cutoff_day { my $recur_method = $self->option('recur_method',1) || 'anniversary'; my $cust_main = $cust_pkg->cust_main; - if ( $cust_main->force_prorate_day and $cust_main->prorate_day ) { - return ( $cust_main->prorate_day ); - } elsif ($recur_method eq 'prorate' || $recur_method eq 'subscription') { + return ( $cust_main->prorate_day ) + if $cust_main->prorate_day and ( $cust_main->force_prorate_day + || $recur_method eq 'prorate' + || $recur_method eq 'subscription' + ); - return split(/\s*,\s*/, $self->option('cutoff_day', 1) || '1'); - } + return split(/\s*,\s*/, $self->option('cutoff_day', 1) || '1') + if $recur_method eq 'prorate' + || $recur_method eq 'subscription'; + + return (); } sub calc_recur_Common { |