summaryrefslogtreecommitdiff
path: root/FS/FS/part_pkg
diff options
context:
space:
mode:
authorChristopher Burger <burgerc@freeside.biz>2018-03-09 14:14:14 -0500
committerChristopher Burger <burgerc@freeside.biz>2018-04-02 09:26:40 -0400
commit5ffcb1400018f9d7b35b05f6cd9d2878a690a390 (patch)
tree7f4dc586be0c8c4e95b1afd7711e116bbad0bec4 /FS/FS/part_pkg
parenta01d62d61d155ff14ffc378811e1d1a006e16160 (diff)
RT# 79239 - updated code to use existing sub routine
Diffstat (limited to 'FS/FS/part_pkg')
-rw-r--r--FS/FS/part_pkg/sql_external.pm39
1 files changed, 4 insertions, 35 deletions
diff --git a/FS/FS/part_pkg/sql_external.pm b/FS/FS/part_pkg/sql_external.pm
index 77b5e49..75c7e13 100644
--- a/FS/FS/part_pkg/sql_external.pm
+++ b/FS/FS/part_pkg/sql_external.pm
@@ -145,41 +145,10 @@ sub calc_recur {
}
sub cutoff_day {
- my $self = shift;
- my $cust_pkg = shift;
- my $cust_main = $cust_pkg->cust_main;
- # force it to act like a prorate package, is what this means
- # because we made a distinction once between prorate and flat packages
- if ( $cust_main->force_prorate_day and $cust_main->prorate_day ) {
- return ( $cust_main->prorate_day );
- }
- if ( $self->option('sync_bill_date',1) ) {
- my $next_bill = $cust_pkg->cust_main->next_bill_date;
- if ( $next_bill ) {
- return (localtime($next_bill))[3];
- } else {
- # This is the customer's only active package and hasn't been billed
- # yet, so set the cutoff day to either today or tomorrow, whichever
- # would result in a full period after rounding.
- my $setup = $cust_pkg->setup; # because it's "now"
- my $rounding_mode = $self->option('prorate_round_day',1);
- return () if !$setup or !$rounding_mode;
- my ($sec, $min, $hour, $mday, $mon, $year) = localtime($setup);
-
- if ( ( $rounding_mode == 1 and $hour >= 12 )
- or ( $rounding_mode == 3 and ( $sec > 0 or $min > 0 or $hour > 0 ))
- ) {
- # then the prorate period will be rounded down to start from
- # midnight tomorrow, so the cutoff day should be the current day +
- # 1.
- $setup = timelocal(59,59,23,$mday,$mon,$year) + 1;
- $mday = (localtime($setup))[3];
- }
- # otherwise, it will be rounded up, so leave the cutoff day at today.
- return $mday;
- }
- }
- return ();
+ my( $self, $cust_pkg ) = @_;
+ my $error = SUPER->cutoff_day($cust_pkg);
+ #my $error = FS::part_pkg::flat::cutoff_day( $self, $cust_pkg ));
+ return $error;
}
sub can_discount { 1; }