X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2FUpgrade.pm;h=eac8333f18beb18fefbc75dd61b7a2e4fcfd1d58;hb=5af515ac6bdc6ff88860c618207660eac48c276a;hp=03d24f7f621812f662eecdade3bafeba4be088a9;hpb=ab8aef9ec21df4b149f39cd24c9c5f3542dd2e3e;p=freeside.git diff --git a/FS/FS/Upgrade.pm b/FS/FS/Upgrade.pm index 03d24f7f6..eac8333f1 100644 --- a/FS/FS/Upgrade.pm +++ b/FS/FS/Upgrade.pm @@ -129,15 +129,22 @@ sub upgrade { } - # decrypt all payinfo where payby = BILL + 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' => { 'payby' => 'BILL', }, - 'extra_sql' => 'AND LENGTH(payinfo) > 100', - }); + 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;