diff options
author | C.J. Adams-Collier <cjac@colliertech.org> | 2014-09-08 11:56:13 -0700 |
---|---|---|
committer | C.J. Adams-Collier <cjac@colliertech.org> | 2014-09-08 12:00:34 -0700 |
commit | 61c4e7640f905d326b36e61ad3ce81d22a9a663a (patch) | |
tree | 6293e5ac68b5c111b313484711cc07bcc648708d | |
parent | 5d7bec95fa2b821878a318d32c25a691d219055f (diff) |
for one-time discounts, print line item in different format - FS RT #27189
-rw-r--r-- | FS/FS/part_pkg/discount_Mixin.pm | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/FS/FS/part_pkg/discount_Mixin.pm b/FS/FS/part_pkg/discount_Mixin.pm index 1edf258d6..48ca94d49 100644 --- a/FS/FS/part_pkg/discount_Mixin.pm +++ b/FS/FS/part_pkg/discount_Mixin.pm @@ -168,10 +168,17 @@ sub calc_discount { $months = sprintf('%.2f', $months) if $months =~ /\./; my $d = 'Includes '; - $d .= 'setup ' if defined $param->{'setup_charge'}; - $d .= 'discount of '. $discount->description_short; - $d .= " for $months month". ( $months!=1 ? 's' : '' ) unless defined $param->{'setup_charge'}; - $d .= ": $money_char$amount" if $months != 1 || $discount->percent; + + if ( $months eq '1' ) { + $d .= "discount of $money_char$amount each"; + } else { + $d .= 'setup ' if defined $param->{'setup_charge'}; + $d .= 'discount of '. $discount->description_short; + $d .= " for $months month". ( $months!=1 ? 's' : '' ) + unless defined $param->{'setup_charge'}; + $d .= ": $money_char$amount" if $months != 1 || $discount->percent; + } + push @$details, $d; $tot_discount += $amount; |