projects
/
freeside.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
12a1fd3
)
RT#42394: paycvv during cust_payby replace (v4+ only)
author
Jonathan Prykop
<jonathan@freeside.biz>
Fri, 13 May 2016 05:19:21 +0000
(
00:19
-0500)
committer
Jonathan Prykop
<jonathan@freeside.biz>
Fri, 13 May 2016 05:19:21 +0000
(
00:19
-0500)
FS/FS/cust_payby.pm
patch
|
blob
|
history
diff --git
a/FS/FS/cust_payby.pm
b/FS/FS/cust_payby.pm
index
5bfb4af
..
fd75567
100644
(file)
--- a/
FS/FS/cust_payby.pm
+++ b/
FS/FS/cust_payby.pm
@@
-196,10
+196,6
@@
sub replace {
? shift
: $self->replace_old;
? shift
: $self->replace_old;
- if ( length($old->paycvv) && $self->paycvv =~ /^\s*[\*x]*\s*$/ ) {
- $self->paycvv($old->paycvv);
- }
-
if ( $self->payby =~ /^(CARD|DCRD)$/
&& ( $self->payinfo =~ /xx/
|| $self->payinfo =~ /^\s*N\/A\s+\(tokenized\)\s*$/
if ( $self->payby =~ /^(CARD|DCRD)$/
&& ( $self->payinfo =~ /xx/
|| $self->payinfo =~ /^\s*N\/A\s+\(tokenized\)\s*$/
@@
-221,6
+217,17
@@
sub replace {
$self->payinfo($new_account.'@'.$new_aba);
}
$self->payinfo($new_account.'@'.$new_aba);
}
+ # don't preserve paycvv if it was passed blank and payinfo changed
+ unless ( $self->payby =~ /^(CARD|DCRD)$/
+ && $old->payinfo ne $self->payinfo
+ && $old->paymask ne $self->paymask
+ && $self->paycvv =~ /^\s*$/ )
+ {
+ if ( length($old->paycvv) && $self->paycvv =~ /^\s*[\*x]*\s*$/ ) {
+ $self->paycvv($old->paycvv);
+ }
+ }
+
local($ignore_expired_card) = 1
if $old->payby =~ /^(CARD|DCRD)$/
&& $self->payby =~ /^(CARD|DCRD)$/
local($ignore_expired_card) = 1
if $old->payby =~ /^(CARD|DCRD)$/
&& $self->payby =~ /^(CARD|DCRD)$/