summaryrefslogtreecommitdiff
path: root/FS/FS/part_pkg
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2017-08-30 17:06:46 -0700
committerIvan Kohler <ivan@freeside.biz>2017-08-30 17:06:46 -0700
commit34636a1bc463209f1c43900d6e1a7c9626036edc (patch)
treed63cc7e3d7825aacf6cb5d4e4332037a9b8ccbf6 /FS/FS/part_pkg
parent7076cfd66dbb71b1577166f75875c091e6a67099 (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.pm15
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 {