From 02c6d652486e452bd088e105b395a9cd49639d02 Mon Sep 17 00:00:00 2001 From: tetragon Date: Tue, 24 Oct 2006 01:44:43 +0000 Subject: Actually commit changes to country_codes to convert to standard names git-svn-id: https://ledger-smb.svn.sourceforge.net/svnroot/ledger-smb/trunk@279 4979c152-3d1c-0410-bac9-87ea11338e46 --- LedgerSMB/User.pm | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) (limited to 'LedgerSMB') diff --git a/LedgerSMB/User.pm b/LedgerSMB/User.pm index 514fc4a9..dc346822 100755 --- a/LedgerSMB/User.pm +++ b/LedgerSMB/User.pm @@ -75,26 +75,26 @@ sub new { sub country_codes { + use Locale::Country; + use Locale::Language; - my %cc = (); - my @language = (); - - # scan the locale directory and read in the LANGUAGE files - opendir DIR, "locale"; + my %cc = (); + + # scan the locale directory and read in the LANGUAGE files + opendir DIR, "${LedgerSMB::Sysconfig::localepath}"; - my @dir = grep !/(^\.\.?$|\..*)/, readdir DIR; - - foreach my $dir (@dir) { - next unless open(FH, "locale/$dir/LANGUAGE"); - @language = ; - close FH; + my @dir = grep !/(^\.\.?$|\..*)/, readdir DIR; - $cc{$dir} = "@language"; - } + foreach my $dir (@dir) { + $cc{$dir} = code2language(substr($dir, 0, 2)); + $cc{$dir} .= ("/" . code2country(substr($dir, 3, 2))) + if length($dir) > 2; + $cc{$dir} .= (" " . substr($dir, 6)) if length($dir) > 5; + } - closedir(DIR); - - %cc; + closedir(DIR); + + %cc; } -- cgit v1.2.3