diff options
author | Jonathan Prykop <jonathan@freeside.biz> | 2016-11-05 01:20:35 -0500 |
---|---|---|
committer | Jonathan Prykop <jonathan@freeside.biz> | 2016-11-29 05:04:09 -0600 |
commit | 1185daff43389fe53ad43e84962329a63d31523e (patch) | |
tree | fc50a3d1ded5cce2974b7fd573e5a956e303b59b /FS/FS/payinfo_Mixin.pm | |
parent | 16498ac263bf5f3e90e23b866706ada768486f40 (diff) |
71513: Card tokenization [bug fixes to previous checkpoint]
Diffstat (limited to 'FS/FS/payinfo_Mixin.pm')
-rw-r--r-- | FS/FS/payinfo_Mixin.pm | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/FS/FS/payinfo_Mixin.pm b/FS/FS/payinfo_Mixin.pm index a0a2cbc..6982834 100644 --- a/FS/FS/payinfo_Mixin.pm +++ b/FS/FS/payinfo_Mixin.pm @@ -67,7 +67,7 @@ sub payinfo { my($self,$payinfo) = @_; if ( defined($payinfo) ) { - $self->paymask($self->mask_payinfo) unless $self->tokenized; #make sure old mask is set + $self->paymask($self->mask_payinfo) unless $self->paymask || $self->tokenized; #make sure old mask is set $self->setfield('payinfo', $payinfo); $self->paymask($self->mask_payinfo) unless $self->tokenized($payinfo); #remask unless tokenizing } else { @@ -454,12 +454,17 @@ sub process_set_cardtype { } } +=item tokenized [ PAYINFO ] + +Returns true if object payinfo is tokenized + +Optionally, an arbitrary payby and payinfo can be passed. + +=cut + sub tokenized { my $self = shift; my $payinfo = scalar(@_) ? shift : $self->payinfo; - ## or just $self->cust_main->tokenized($payinfo) ?? - ## everything that currently uses this mixin is linked to cust_main, - ## but just in case, false laziness w/ FS::cust_main::Billing_Realtime $payinfo =~ /^99\d{14}$/; } |