summaryrefslogtreecommitdiff
path: root/FS/FS/quotation.pm
diff options
context:
space:
mode:
authorJonathan Prykop <jonathan@freeside.biz>2016-04-25 19:45:29 -0500
committerJonathan Prykop <jonathan@freeside.biz>2016-04-25 19:49:13 -0500
commitb512e6226efab47518cea426147fd52cee207148 (patch)
treeb0934cb2bac251b2634cebafea2657b1936e804e /FS/FS/quotation.pm
parent2c8cfec03cf66102f7a182d0bb6bd04e2628dc6d (diff)
RT#39819: Packages with Show zero setup/recurring do not print on quotations
Diffstat (limited to 'FS/FS/quotation.pm')
-rw-r--r--FS/FS/quotation.pm10
1 files changed, 7 insertions, 3 deletions
diff --git a/FS/FS/quotation.pm b/FS/FS/quotation.pm
index 8e32eff..f3bfc27 100644
--- a/FS/FS/quotation.pm
+++ b/FS/FS/quotation.pm
@@ -280,8 +280,8 @@ sub _items_sections {
my $part_pkg = $pkg->part_pkg;
my $recur_freq = $part_pkg->freq;
- $show{$recur_freq} = 1 if $pkg->unitrecur > 0;
- $show{0} = 1 if $pkg->unitsetup > 0;
+ $show{$recur_freq} = 1 if $pkg->unitrecur > 0 or $part_pkg->recur_show_zero;
+ $show{0} = 1 if $pkg->unitsetup > 0 or $part_pkg->setup_show_zero;
($subtotals{0} ||= 0) += $pkg->setup + $pkg->setup_tax;
($subtotals{$recur_freq} ||= 0) += $pkg->recur + $pkg->recur_tax;
@@ -1053,7 +1053,11 @@ sub _items_pkg {
$quotation_pkg->get('unit'.$setuprecur));
$this_item->{'amount'} = sprintf('%.2f', $this_item->{'unit_amount'}
* $quotation_pkg->quantity);
- next if $this_item->{'amount'} == 0;
+ next if $this_item->{'amount'} == 0 and !(
+ $setuprecur eq 'setup'
+ ? $part_pkg->setup_show_zero
+ : $part_pkg->recur_show_zero
+ );
if ( $preref ) {
$this_item->{'preref_html'} = &$preref($quotation_pkg);