From a31ac63183eccb39dbbd498b9ad2056367ff494c Mon Sep 17 00:00:00 2001 From: Mitch Jackson Date: Wed, 30 Jan 2019 07:06:01 -0500 Subject: [PATCH] RT# 76181 Invoice date format can set locale from Freeside conf Invoice date formatting chooses localization from * invoice customer record $cust_main->locale * or FS::Conf 'locale' * or fallback en_US --- FS/FS/cust_main_Mixin.pm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/FS/FS/cust_main_Mixin.pm b/FS/FS/cust_main_Mixin.pm index 6a2e9058c..c36b79a8a 100644 --- a/FS/FS/cust_main_Mixin.pm +++ b/FS/FS/cust_main_Mixin.pm @@ -660,13 +660,13 @@ sub time2str_local { $self->{_date_format} ||= {}; if (!exists($self->{_dh})) { - my $cust_main = $self->cust_main; - my $locale = $cust_main->locale if $cust_main; - $locale ||= 'en_US'; + my $locale = $self->cust_main->locale if $self->cust_main; + $locale ||= FS::Conf->new->config('locale') || 'en_US'; + my %info = FS::Locales->locale_info($locale); - my $dh = eval { Date::Language->new($info{'name'}) } || - Date::Language->new(); # fall back to English - $self->{_dh} = $dh; + + $self->{_dh} = eval { Date::Language->new($info{'name'}) } + || Date::Language->new(); # fall back to English } if ($format eq 'short') { -- 2.11.0