summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2015-07-01 15:46:47 -0700
committerIvan Kohler <ivan@freeside.biz>2015-07-01 15:46:47 -0700
commita931e7703fc3b7b68a1e17c11cc9c76949372898 (patch)
treecb6eddf7079d20a19440090866b9a2023f8dcecc
parentf2ccf00b0a2eb89499bd63cbd965fbd63802d754 (diff)
payment total on quotes: not when recur_method eq prorate, and be more refined about disabling with sync_bill-date
-rw-r--r--FS/FS/quotation.pm12
1 files changed, 7 insertions, 5 deletions
diff --git a/FS/FS/quotation.pm b/FS/FS/quotation.pm
index 0e6b4e7d0..669a25417 100644
--- a/FS/FS/quotation.pm
+++ b/FS/FS/quotation.pm
@@ -347,11 +347,13 @@ sub _items_total {
my $disable_total = 0;
foreach my $quotation_pkg ($self->quotation_pkg) {
my $part_pkg = $quotation_pkg->part_pkg;
- if ( $part_pkg->plan =~ /^prorate/
- or $part_pkg->plan eq 'agent'
- or $part_pkg->plan =~ /^torrus/
- or $part_pkg->option('sync_bill_date')
- or $part_pkg->option('recur_method') eq 'prorate' ) {
+ if ( $part_pkg->plan =~ /^(prorate|torrus|agent$)/
+ || $part_pkg->option('recur_method') eq 'prorate'
+ || ( $part_pkg->option('sync_bill_date')
+ && $self->custnum
+ && $self->cust_main->billing_pkgs #num_billing_pkgs when we have it
+ )
+ ) {
$disable_total = 1;
last;
}