summaryrefslogtreecommitdiff
path: root/FS/FS/Setup.pm
diff options
context:
space:
mode:
authorivan <ivan>2006-12-15 08:37:15 +0000
committerivan <ivan>2006-12-15 08:37:15 +0000
commitf5246a149f9314649e85b20837b0b986d87a56ea (patch)
tree80cf1add41e62486b41b98f3fedb1de9a499721c /FS/FS/Setup.pm
parent6837ca2c7a45033a566238bb3e5f3f262d85fc0e (diff)
add a quick tool for adding states to old databases
Diffstat (limited to 'FS/FS/Setup.pm')
-rw-r--r--FS/FS/Setup.pm48
1 files changed, 28 insertions, 20 deletions
diff --git a/FS/FS/Setup.pm b/FS/FS/Setup.pm
index 58fba6b..4864cfe 100644
--- a/FS/FS/Setup.pm
+++ b/FS/FS/Setup.pm
@@ -61,30 +61,11 @@ sub create_initial_data {
sub populate_locales {
use Locale::Country;
- use Locale::SubCountry;
use FS::cust_main_county;
#cust_main_county
foreach my $country ( sort map uc($_), all_country_codes ) {
-
- my $subcountry = eval { new Locale::SubCountry($country) };
- my @states = $subcountry ? $subcountry->all_codes : undef;
-
- if ( !scalar(@states) || ( scalar(@states)==1 && !defined($states[0]) ) ) {
-
- _add_locale( 'country'=>$country );
-
- } else {
-
- if ( $states[0] =~ /^(\d+|\w)$/ ) {
- @states = map $subcountry->full_name($_), @states
- }
-
- foreach my $state ( @states ) {
- _add_locale( 'country'=>$country, 'state'=>$state);
- }
-
- }
+ _add_country($country);
}
}
@@ -111,6 +92,33 @@ sub populate_addl_locales {
}
+sub _add_country {
+
+ use Locale::SubCountry;
+
+ my( $country ) = shift;
+
+ my $subcountry = eval { new Locale::SubCountry($country) };
+ my @states = $subcountry ? $subcountry->all_codes : undef;
+
+ if ( !scalar(@states) || ( scalar(@states)==1 && !defined($states[0]) ) ) {
+
+ _add_locale( 'country'=>$country );
+
+ } else {
+
+ if ( $states[0] =~ /^(\d+|\w)$/ ) {
+ @states = map $subcountry->full_name($_), @states
+ }
+
+ foreach my $state ( @states ) {
+ _add_locale( 'country'=>$country, 'state'=>$state);
+ }
+
+ }
+
+}
+
sub _add_locale {
my $cust_main_county = new FS::cust_main_county( { 'tax'=>0, @_ });
my $error = $cust_main_county->insert;