projects
/
freeside.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
spam settings, RT#15987
[freeside.git]
/
FS
/
FS
/
cust_main.pm
diff --git
a/FS/FS/cust_main.pm
b/FS/FS/cust_main.pm
index
53ecf5b
..
5fd0cb6
100644
(file)
--- a/
FS/FS/cust_main.pm
+++ b/
FS/FS/cust_main.pm
@@
-2032,14
+2032,15
@@
sub check {
my $payinfo = $self->payinfo;
$payinfo =~ s/[^\d\@\.]//g;
my $payinfo = $self->payinfo;
$payinfo =~ s/[^\d\@\.]//g;
- if ( $conf->exists('cust_main-require-bank-branch') ) {
- $payinfo =~ /^(\d+)\@(\d+)\.(\d+)$/ or return 'invalid echeck account@branch.bank';
+ if ( $conf->config('echeck-country') eq 'CA' ) {
+ $payinfo =~ /^(\d+)\@(\d{5})\.(\d{3})$/
+ or return 'invalid echeck account@branch.bank';
$payinfo = "$1\@$2.$3";
$payinfo = "$1\@$2.$3";
- } elsif ( $conf->
exists('echeck-nonus')
) {
- $payinfo =~ /^(\d+)\@(\d
+
)$/ or return 'invalid echeck account@aba';
+ } elsif ( $conf->
config('echeck-country') eq 'US'
) {
+ $payinfo =~ /^(\d+)\@(\d
{9}
)$/ or return 'invalid echeck account@aba';
$payinfo = "$1\@$2";
} else {
$payinfo = "$1\@$2";
} else {
- $payinfo =~ /^(\d+)\@(\d
{9})$/ or return 'invalid echeck account@aba
';
+ $payinfo =~ /^(\d+)\@(\d
+)$/ or return 'invalid echeck account@routing
';
$payinfo = "$1\@$2";
}
$self->payinfo($payinfo);
$payinfo = "$1\@$2";
}
$self->payinfo($payinfo);
@@
-5062,6
+5063,10
@@
sub _upgrade_data { #class method
"UPDATE cust_main SET paydate = SUBSTRING(paydate FROM 1 FOR 5) || '0' || SUBSTRING(paydate FROM 6) WHERE SUBSTRING(paydate FROM 7 FOR 1) = '-'";
}
"UPDATE cust_main SET paydate = SUBSTRING(paydate FROM 1 FOR 5) || '0' || SUBSTRING(paydate FROM 6) WHERE SUBSTRING(paydate FROM 7 FOR 1) = '-'";
}
+ push @statements, #fix the weird BILL with a cc# in payinfo problem
+ #DCRD to be safe, or CARD?
+ "UPDATE cust_main SET payby = 'DCRD' WHERE payby = 'BILL' and length(payinfo) = 16";
+
foreach my $sql ( @statements ) {
my $sth = dbh->prepare($sql) or die dbh->errstr;
$sth->execute or die $sth->errstr;
foreach my $sql ( @statements ) {
my $sth = dbh->prepare($sql) or die dbh->errstr;
$sth->execute or die $sth->errstr;