summaryrefslogtreecommitdiff
path: root/FS/FS/Template_Mixin.pm
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2014-06-18 18:13:22 -0700
committerIvan Kohler <ivan@freeside.biz>2014-06-18 18:13:22 -0700
commit479ec8dd320258a22165d05da9624e6571c0daaf (patch)
tree6c315f9700b20628f6ca8f3fa363981f83717746 /FS/FS/Template_Mixin.pm
parent4532048fddaf20751dda7721ee6bab4bac8755ac (diff)
fix (part of) 3.x performance regression on customers with tons of invoices, RT#29646, RT#24850
Diffstat (limited to 'FS/FS/Template_Mixin.pm')
-rw-r--r--FS/FS/Template_Mixin.pm22
1 files changed, 19 insertions, 3 deletions
diff --git a/FS/FS/Template_Mixin.pm b/FS/FS/Template_Mixin.pm
index 23ee6baee..1c373f95d 100644
--- a/FS/FS/Template_Mixin.pm
+++ b/FS/FS/Template_Mixin.pm
@@ -2,7 +2,9 @@ package FS::Template_Mixin;
use strict;
use vars qw( $DEBUG $me
- $money_char );
+ $money_char
+ $date_format
+ );
# but NOT $conf
use vars qw( $invoice_lines @buf ); #yuck
use List::Util qw(sum);
@@ -26,7 +28,8 @@ $DEBUG = 0;
$me = '[FS::Template_Mixin]';
FS::UID->install_callback( sub {
my $conf = new FS::Conf; #global
- $money_char = $conf->config('money_char') || '$';
+ $money_char = $conf->config('money_char') || '$';
+ $date_format = $conf->config('date_format') || '%x'; #/YY
} );
=item conf [ MODE ]
@@ -1799,7 +1802,8 @@ sub credit_balance_msg {
=item _date_pretty
-Returns a string with the date, for example: "3/20/2008"
+Returns a string with the date, for example: "3/20/2008", localized for the
+customer. Use _date_pretty_unlocalized for non-end-customer display use.
=cut
@@ -1808,6 +1812,18 @@ sub _date_pretty {
$self->time2str_local('short', $self->_date);
}
+=item _date_pretty_unlocalized
+
+Returns a string with the date, for example: "3/20/2008", in the format
+configured for the back-office. Use _date_pretty for end-customer display use.
+
+=cut
+
+sub _date_pretty_unlocalized {
+ my $self = shift;
+ $self->time2str($date_format, $self->_date);
+}
+
=item _items_sections OPTIONS
Generate section information for all items appearing on this invoice.