diff options
author | Ivan Kohler <ivan@freeside.biz> | 2013-09-10 22:19:56 -0700 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2013-09-10 22:19:56 -0700 |
commit | 47d47f7b4a77761d5617a64212d6b1460fa27adf (patch) | |
tree | 1ef3e70b6aa3a7303b08fd1716caf2c1a1d231b5 /FS | |
parent | a3371bd505dfc1b7791cfe681aa33afb1f77e063 (diff) |
improve performance of package ordering, RT#24955, fallout from future start dates, RT#20686
Diffstat (limited to 'FS')
-rw-r--r-- | FS/FS/part_pkg.pm | 27 |
1 files changed, 5 insertions, 22 deletions
diff --git a/FS/FS/part_pkg.pm b/FS/FS/part_pkg.pm index 3b4aaf587..3e6333890 100644 --- a/FS/FS/part_pkg.pm +++ b/FS/FS/part_pkg.pm @@ -1029,32 +1029,15 @@ sub can_discount { 0; } # whether the plan allows changing the start date sub can_start_date { 1; } -# the default start date; takes an FS::cust_main as an argument -sub default_start_date { +# the delay start date if present +sub delay_start_date { my $self = shift; - my $cust_main = shift; - my $conf = FS::Conf->new; - if ( $self->delay_start ) { - my $delay = $self->delay_start; + my $delay = $self->delay_start or return ''; - my ($mday,$mon,$year) = (localtime(time))[3,4,5]; - my $start_date = timelocal(0,0,0,$mday,$mon,$year) + 86400 * $delay; - return $start_date; + my ($mday,$mon,$year) = (localtime(time))[3,4,5]; + timelocal(0,0,0,$mday,$mon,$year) + 86400 * $delay; - } elsif ( $conf->exists('order_pkg-no_start_date') ) { - - return ''; - - } elsif ( $cust_main ) { - - return $cust_main->next_bill_date; - - } else { - - return ''; - - } } sub freqs_href { |