[freeside-commits] freeside/FS/FS Record.pm, 1.188, 1.189 cust_main.pm, 1.416, 1.417 Upgrade.pm, 1.28, 1.29
Ivan,,,
ivan at wavetail.420.am
Wed Apr 8 00:32:26 PDT 2009
Update of /home/cvs/cvsroot/freeside/FS/FS
In directory wavetail.420.am:/tmp/cvs-serv18725
Modified Files:
Record.pm cust_main.pm Upgrade.pm
Log Message:
eliminate all trace of cvv from history records, RT#5093
Index: Upgrade.pm
===================================================================
RCS file: /home/cvs/cvsroot/freeside/FS/FS/Upgrade.pm,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -d -r1.28 -r1.29
--- Upgrade.pm 17 Mar 2009 16:06:31 -0000 1.28
+++ Upgrade.pm 8 Apr 2009 07:32:24 -0000 1.29
@@ -91,6 +91,9 @@
tie my %hash, 'Tie::IxHash',
+ #cust_main (remove paycvv from history)
+ 'cust_main' => [],
+
#msgcat
'msgcat' => [],
Index: cust_main.pm
===================================================================
RCS file: /home/cvs/cvsroot/freeside/FS/FS/cust_main.pm,v
retrieving revision 1.416
retrieving revision 1.417
diff -u -d -r1.416 -r1.417
--- cust_main.pm 5 Apr 2009 23:18:57 -0000 1.416
+++ cust_main.pm 8 Apr 2009 07:32:24 -0000 1.417
@@ -76,6 +76,8 @@
$ignore_expired_card = 0;
@encrypted_fields = ('payinfo', 'paycvv');
+sub nohistory_fields { ('paycvv'); }
+
@paytypes = ('', 'Personal checking', 'Personal savings', 'Business checking', 'Business savings');
#ask FS::UID to run this stuff for us later
@@ -8429,6 +8431,15 @@
);
}
+sub _upgrade_data { #class method
+ my ($class, %opts) = @_;
+
+ my $sql = 'UPDATE h_cust_main SET paycvv = NULL';
+ my $sth = dbh->prepare($sql) or die dbh->errstr;
+ $sth->execute or die $sth->errstr;
+
+}
+
=back
=head1 BUGS
Index: Record.pm
===================================================================
RCS file: /home/cvs/cvsroot/freeside/FS/FS/Record.pm,v
retrieving revision 1.188
retrieving revision 1.189
diff -u -d -r1.188 -r1.189
--- Record.pm 7 Apr 2009 01:20:38 -0000 1.188
+++ Record.pm 8 Apr 2009 07:32:24 -0000 1.189
@@ -1747,16 +1747,18 @@
$time ||= time;
+ my %nohistory = map { $_=>1 } $self->nohistory_fields;
+
my @fields =
- grep { defined($self->getfield($_)) && $self->getfield($_) ne "" }
+ grep { defined($self->get($_)) && $self->get($_) ne "" && ! $nohistory{$_} }
real_fields($self->table);
;
- # If we're encrypting then don't ever store the payinfo or CVV2 in the history....
- # You can see if it changed by the paymask...
- if ($conf && $conf->exists('encryption') ) {
- @fields = grep $_ ne 'payinfo' && $_ ne 'cvv2', @fields;
+ # If we're encrypting then don't store the payinfo in the history
+ if ( $conf && $conf->exists('encryption') ) {
+ @fields = grep { $_ ne 'payinfo' } @fields;
}
+
my @values = map { _quote( $self->getfield($_), $self->table, $_) } @fields;
"INSERT INTO h_". $self->table. " ( ".
More information about the freeside-commits
mailing list