X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fpayinfo_Mixin.pm;h=f2edbd261252df431a076f179caf5c8378b871a4;hb=c2e0c1d06e2a9b9146f9b538ce07f57664e16966;hp=15c4e3979b7459043151243f7d24678f806d0bea;hpb=c21f9fadde9100aedb8c4cfc35629bc3294ba91e;p=freeside.git diff --git a/FS/FS/payinfo_Mixin.pm b/FS/FS/payinfo_Mixin.pm index 15c4e3979..f2edbd261 100644 --- a/FS/FS/payinfo_Mixin.pm +++ b/FS/FS/payinfo_Mixin.pm @@ -216,7 +216,7 @@ sub payinfo_check { FS::payby->can_payby($self->table, $self->payby) or return "Illegal payby: ". $self->payby; - if ( $self->payby eq 'CARD' ) { + if ( $self->payby eq 'CARD' && ! $self->is_encrypted($self->payinfo) ) { my $payinfo = $self->payinfo; $payinfo =~ s/\D//g; $self->payinfo($payinfo); @@ -227,11 +227,17 @@ sub payinfo_check { validate($self->payinfo) or return "Illegal credit card number"; return "Unknown card type" if cardtype($self->payinfo) eq "Unknown"; } else { - $self->payinfo('N/A'); + $self->payinfo('N/A'); #??? } } else { - my $error = $self->ut_textn('payinfo'); - return $error if $error; + if ( $self->is_encrypted($self->payinfo) ) { + #something better? all it would cause is a decryption error anyway? + my $error = $self->ut_anythingn('payinfo'); + return $error if $error; + } else { + my $error = $self->ut_textn('payinfo'); + return $error if $error; + } } }