X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fcust_bill.pm;h=335c4b6a728ce1165a9ef00eaa106a2bf85ef0be;hb=e50b6ec8d63afe4c04ae33384758d8786fcc7cfe;hp=0cf05268219b89a7cef811c538e065ca7fd81c6e;hpb=a8e4b1744a6bbd2e1509b58e73b1d52751563880;p=freeside.git diff --git a/FS/FS/cust_bill.pm b/FS/FS/cust_bill.pm index 0cf052682..335c4b6a7 100644 --- a/FS/FS/cust_bill.pm +++ b/FS/FS/cust_bill.pm @@ -2291,10 +2291,12 @@ sub print_generic { my $nbsp = $nbsps{$format}; my %escape_functions = ( 'latex' => \&_latex_escape, - 'html' => \&_html_escape, #\&encode_entities, + 'html' => \&_html_escape_nbsp,#\&encode_entities, 'template' => sub { shift }, ); my $escape_function = $escape_functions{$format}; + my $escape_function_nonbsp = ($format eq 'html') + ? \&_html_escape : $escape_function; my %date_formats = ( 'latex' => '%b %o, %Y', 'html' => '%b %o, %Y', @@ -2598,7 +2600,7 @@ sub print_generic { my $extra_lines = (); if ( $multisection ) { ($extra_sections, $extra_lines) = - $self->_items_extra_usage_sections($escape_function, $format) + $self->_items_extra_usage_sections($escape_function_nonbsp, $format) if $conf->exists('usage_class_as_a_section', $cust_main->agentnum); push @$extra_sections, $adjust_section if $adjust_section->{sort_weight}; @@ -2607,13 +2609,13 @@ sub print_generic { push @sections, $self->_items_sections( $late_sections, # this could stand a refactor $summarypage, - $escape_function, + $escape_function_nonbsp, $extra_sections, $format, #bah ); if ($conf->exists('svc_phone_sections')) { my ($phone_sections, $phone_lines) = - $self->_items_svc_phone_sections($escape_function, $format); + $self->_items_svc_phone_sections($escape_function_nonbsp, $format); push @{$late_sections}, @$phone_sections; push @detail_items, @$phone_lines; } @@ -3165,10 +3167,14 @@ sub _latex_escape { $value; } - sub _html_escape { my $value = shift; encode_entities($value); + $value; +} + +sub _html_escape_nbsp { + my $value = _html_escape(shift); $value =~ s/ +/ /g; $value; } @@ -4094,15 +4100,20 @@ sub _items_cust_bill_pkg { unless ( $cust_pkg->part_pkg->hide_svc_detail || $cust_bill_pkg->hidden ) { + push @d, map &{$escape_function}($_), - $cust_pkg->h_labels_short($self->_date); + $cust_pkg->h_labels_short($self->_date) + unless $cust_bill_pkg->pkgpart_override; #don't redisplay services + if ( $multilocation ) { my $loc = $cust_pkg->location_label; - $loc = substr($desc, 0, 50). '...' + $loc = substr($loc, 0, 50). '...' if $format eq 'latex' && length($loc) > 50; push @d, &{$escape_function}($loc); } + } + push @d, $cust_bill_pkg->details(%details_opt) if $cust_bill_pkg->recur == 0; @@ -4151,17 +4162,20 @@ sub _items_cust_bill_pkg { || $cust_bill_pkg->hidden || $is_summary && $type && $type eq 'U' ) { + push @d, map &{$escape_function}($_), $cust_pkg->h_labels_short(@dates) #$cust_bill_pkg->edate, #$cust_bill_pkg->sdate) - ; + unless $cust_bill_pkg->pkgpart_override; #don't redisplay services + if ( $multilocation ) { my $loc = $cust_pkg->location_label; - $loc = substr($desc, 0, 50). '...' + $loc = substr($loc, 0, 50). '...' if $format eq 'latex' && length($loc) > 50; push @d, &{$escape_function}($loc); } + } push @d, $cust_bill_pkg->details(%details_opt)