From: Ivan Kohler Date: Fri, 25 Oct 2013 04:58:47 +0000 (-0700) Subject: fix next-bill-ignore-time, RT#24318, RT#24476, RT#12570 X-Git-Url: http://git.freeside.biz/gitweb/?a=commitdiff_plain;h=c8247c2214b7246a2be5796ba971ed09d7370228;p=freeside.git fix next-bill-ignore-time, RT#24318, RT#24476, RT#12570 --- diff --git a/FS/FS/cust_main/Billing.pm b/FS/FS/cust_main/Billing.pm index e170f09cd..1e11b572f 100644 --- a/FS/FS/cust_main/Billing.pm +++ b/FS/FS/cust_main/Billing.pm @@ -373,6 +373,11 @@ sub bill { my $time = $options{'time'} || time; my $invoice_time = $options{'invoice_time'} || $time; + my $cmp_time = ( $conf->exists('next-bill-ignore-time') + ? day_end( $time ) + : $time + ); + $options{'not_pkgpart'} ||= {}; $options{'not_pkgpart'} = { map { $_ => 1 } split(/\s*,\s*/, $options{'not_pkgpart'}) @@ -480,7 +485,7 @@ sub bill { my $next_bill = $cust_pkg->getfield('bill') || 0; my $error; # let this run once if this is the last bill upon cancellation - while ( $next_bill <= $time or $options{cancel} ) { + while ( $next_bill <= $cmp_time or $options{cancel} ) { $error = $self->_make_lines( 'part_pkg' => $part_pkg, 'cust_pkg' => $cust_pkg,