X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2FUpgrade.pm;h=cf615803172fb70c7e3d6266f829ef4c7db80f81;hb=8688a1fe1b157c1061e928823d81ba1b7f34cde8;hp=3ea554e4afe379e11c3e3f38a153e33e06cd80c5;hpb=4665d5af02f915679207a369222472a25e137c9d;p=freeside.git diff --git a/FS/FS/Upgrade.pm b/FS/FS/Upgrade.pm index 3ea554e4a..cf6158031 100644 --- a/FS/FS/Upgrade.pm +++ b/FS/FS/Upgrade.pm @@ -47,6 +47,19 @@ sub upgrade_config { if $conf->exists('payment_receipt_email') || $conf->config('payment_receipt_msgnum'); + $conf->touch('geocode-require_nw_coordinates') + if $conf->exists('svc_broadband-require-nw-coordinates'); + + unless ( $conf->config('echeck-country') ) { + if ( $conf->exists('cust_main-require-bank-branch') ) { + $conf->set('echeck-country', 'CA'); + } elsif ( $conf->exists('echeck-nonus') ) { + $conf->set('echeck-country', 'XX'); + } else { + $conf->set('echeck-country', 'US'); + } + } + upgrade_overlimit_groups($conf); map { upgrade_overlimit_groups($conf,$_->agentnum) } qsearch('agent', {}); @@ -129,6 +142,31 @@ sub upgrade { } + local($FS::cust_main::ignore_expired_card) = 1; + local($FS::cust_main::ignore_illegal_zip) = 1; + local($FS::cust_main::ignore_banned_card) = 1; + local($FS::cust_main::skip_fuzzyfiles) = 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... + my @decrypt_tables = qw( cust_main cust_pay_void cust_pay cust_refund cust_pay_pending ); + foreach my $table ( @decrypt_tables ) { + my @objects = qsearch({ + 'table' => $table, + 'hashref' => {}, + 'extra_sql' => "WHERE payby NOT IN ( 'CARD', 'DCRD', 'CHEK', 'DCHK' ) ". + " AND LENGTH(payinfo) > 100", + }); + foreach my $object ( @objects ) { + my $payinfo = $object->decrypt($object->payinfo); + die "error decrypting payinfo" if $payinfo eq $object->payinfo; + $object->payinfo($payinfo); + my $error = $object->replace; + die $error if $error; + } + } + } =item upgrade_data @@ -285,6 +323,8 @@ sub upgrade_schema_data { #fix classnum character(1) 'cust_bill_pkg_detail' => [], + #add necessary columns to RT schema + 'TicketSystem' => [], ;