X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2FUpgrade.pm;h=bf3e2ad38f7ec0bdca3362a874b97214bc36b7af;hb=496842b7db855bd616844c7667e5d70de42535fd;hp=7dd889f2c7002b3e917db9ea2a5b4da325ba47da;hpb=962cd26e8e33bf3653cca439dbd9bd52f46bad29;p=freeside.git diff --git a/FS/FS/Upgrade.pm b/FS/FS/Upgrade.pm index 7dd889f2c..bf3e2ad38 100644 --- a/FS/FS/Upgrade.pm +++ b/FS/FS/Upgrade.pm @@ -71,14 +71,31 @@ sub upgrade_config { qw( quotation_html quotation_latex quotation_latexnotes ); # change 'fslongtable' to 'longtable' - foreach my $name (qw(invoice_latex quotation_latex)) { - my $value = join("\n",$conf->config($name)); - if (length($value)) { + # in invoice and quotation main templates, and also in all secondary + # invoice templates + my @latex_confs = + qsearch('conf', { 'name' => {op=>'LIKE', value=>'%latex%'} }); + + foreach my $c (@latex_confs) { + my $value = $c->value; + if (length($value) and $value =~ /fslongtable/) { $value =~ s/fslongtable/longtable/g; - $conf->set($name, $value); + $conf->set($c->name, $value, $c->agentnum); } } + # if there's a USPS tools login, assume that's the standardization method + # you want to use + $conf->set('address_standardize_method', 'usps') + if $conf->exists('usps_webtools-userid') + && length($conf->config('usps_webtools-userid')) > 0 + && ! $conf->exists('address_standardize_method'); + + # this option has been renamed/expanded + if ( $conf->exists('cust_main-enable_spouse_birthdate') ) { + $conf->touch('cust_main-enable_spouse'); + $conf->delete('cust_main-enable_spouse_birthdate'); + } } sub upgrade_overlimit_groups { @@ -120,6 +137,9 @@ sub upgrade { local $FS::UID::AutoCommit = 0; local $FS::UID::AutoCommit = 0; + local $FS::cust_pkg::upgrade = 1; #go away after setup+start dates cleaned up for old customers + + foreach my $table ( keys %$data ) { my $class = "FS::$table"; @@ -163,6 +183,9 @@ sub upgrade { local($FS::cust_main::ignore_banned_card) = 1; local($FS::cust_main::skip_fuzzyfiles) = 1; + local($FS::cust_payby::ignore_expired_card) = 1; + local($FS::cust_payby::ignore_banned_card) = 1; + # decrypt inadvertantly-encrypted payinfo where payby != CARD,DCRD,CHEK,DCHK # kind of a weird spot for this, but it's better than duplicating # all this code in each class... @@ -282,6 +305,9 @@ sub upgrade_data { #insert default tower_sector if not present 'tower' => [], + #repair improperly deleted services + 'cust_svc' => [], + #routernum/blocknum 'svc_broadband' => [], @@ -293,6 +319,9 @@ sub upgrade_data { #kick off tax location history upgrade 'cust_bill_pkg' => [], + + #fix taxable line item links + 'cust_bill_pkg_tax_location' => [], ; \%hash;