[freeside-commits] branch FREESIDE_3_BRANCH updated. a3f6785d22a743f03a805f537083ab57a20d5c6f
Mark Wells
mark at 420.am
Tue Feb 3 11:44:09 PST 2015
The branch, FREESIDE_3_BRANCH has been updated
via a3f6785d22a743f03a805f537083ab57a20d5c6f (commit)
from 9a14161203e3fb6f4733d3554d66dcdc1486fe23 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit a3f6785d22a743f03a805f537083ab57a20d5c6f
Author: Mark Wells <mark at freeside.biz>
Date: Tue Feb 3 11:43:51 2015 -0800
make non-package fees appear in invoice spools, #29824, #25899
diff --git a/FS/FS/Template_Mixin.pm b/FS/FS/Template_Mixin.pm
index 986b308..d46f617 100644
--- a/FS/FS/Template_Mixin.pm
+++ b/FS/FS/Template_Mixin.pm
@@ -2830,6 +2830,8 @@ sub _items_fee {
my $self = shift;
my %options = @_;
my @cust_bill_pkg = grep { $_->feepart } $self->cust_bill_pkg;
+ my $escape_function = $options{escape_function};
+
my @items;
foreach my $cust_bill_pkg (@cust_bill_pkg) {
# cache this, so we don't look it up again in every section
@@ -2865,12 +2867,17 @@ sub _items_fee {
foreach (sort keys(%base_invnums)) {
next if $_ == $self->invnum;
push @ext_desc,
- $self->mt('from invoice \\#[_1] on [_2]', $_, $base_invnums{$_});
+ &{$escape_function}(
+ $self->mt('from invoice #[_1] on [_2]', $_, $base_invnums{$_})
+ );
}
+ my $desc = $part_fee->itemdesc_locale($self->cust_main->locale);
+ $desc = &{$escape_function}($desc);
+
push @items,
{ feepart => $cust_bill_pkg->feepart,
amount => sprintf('%.2f', $cust_bill_pkg->setup + $cust_bill_pkg->recur),
- description => $part_fee->itemdesc_locale($self->cust_main->locale),
+ description => $desc,
ext_description => \@ext_desc
# sdate/edate?
};
diff --git a/FS/FS/cust_bill.pm b/FS/FS/cust_bill.pm
index b7d8b6e..f57f14f 100644
--- a/FS/FS/cust_bill.pm
+++ b/FS/FS/cust_bill.pm
@@ -1907,7 +1907,14 @@ sub print_csv {
if ( lc($opt{'format'}) eq 'billco' ) {
my $lineseq = 0;
- foreach my $item ( $self->_items_pkg ) {
+ my %items_opt = ( format => 'template',
+ escape_function => sub { shift } );
+ # I don't know what characters billco actually tolerates in spool entries.
+ # Text::CSV will take care of delimiters, though.
+
+ my @items = ( $self->_items_pkg(%items_opt),
+ $self->_items_fee(%items_opt) );
+ foreach my $item (@items) {
my $description = $item->{'description'};
if ( $item->{'_is_discount'} and exists($item->{ext_description}[0]) ) {
-----------------------------------------------------------------------
Summary of changes:
FS/FS/Template_Mixin.pm | 11 +++++++++--
FS/FS/cust_bill.pm | 9 ++++++++-
2 files changed, 17 insertions(+), 3 deletions(-)
More information about the freeside-commits
mailing list