[interchange-cvs] interchange - heins modified lib/Vend/Dispatch.pm

interchange-cvs at icdevgroup.org interchange-cvs at icdevgroup.org
Tue Oct 28 12:22:29 EST 2003


User:      heins
Date:      2003-10-28 17:22:29 GMT
Modified:  lib/Vend Dispatch.pm
Log:
* Implement Paul Vinciguerra's suggestion to not save mv_password in
  the History hash.

  You can also set up a different NoHistory set via

  	@Vend::Dispatch::NoHistory = qw/ foo bar mv_credit_card_number /;

Revision  Changes    Path
1.27      +21 -6     interchange/lib/Vend/Dispatch.pm


rev 1.27, prev_rev 1.26
Index: Dispatch.pm
===================================================================
RCS file: /var/cvs/interchange/lib/Vend/Dispatch.pm,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -r1.26 -r1.27
--- Dispatch.pm	10 Sep 2003 15:46:47 -0000	1.26
+++ Dispatch.pm	28 Oct 2003 17:22:29 -0000	1.27
@@ -1,6 +1,6 @@
 # Vend::Dispatch - Handle Interchange page requests
 #
-# $Id: Dispatch.pm,v 1.26 2003/09/10 15:46:47 mheins Exp $
+# $Id: Dispatch.pm,v 1.27 2003/10/28 17:22:29 mheins Exp $
 #
 # Copyright (C) 2002-2003 Interchange Development Group
 # Copyright (C) 2002 Mike Heins <mike at perusion.net>
@@ -26,7 +26,7 @@
 package Vend::Dispatch;
 
 use vars qw($VERSION);
-$VERSION = substr(q$Revision: 1.26 $, 10);
+$VERSION = substr(q$Revision: 1.27 $, 10);
 
 use POSIX qw(strftime);
 use Vend::Util;
@@ -846,6 +846,15 @@
 	}
 }
 
+use vars qw/@NoHistory/;
+
+ at NoHistory= qw/
+					mv_credit_card_number
+					mv_credit_card_cvv2
+					mv_password
+					mv_verify
+				/;
+
 sub url_history {
 	$Vend::Session->{History} = []
 		unless defined $Vend::Session->{History};
@@ -855,11 +864,17 @@
 		push (@{$Vend::Session->{History}},  [ 'expired', {} ]);
 	}
 	else {
-		my $save_number = delete $CGI::values{mv_credit_card_number};
-		my $save_cvv2   = delete $CGI::values{mv_credit_card_cvv2};
+		my @save;
+		for(@NoHistory) {
+			push @save, delete $CGI::values{$_};
+		}
+
 		push (@{$Vend::Session->{History}},  [ $CGI::path_info, { %CGI::values } ]);
-		$CGI::values{mv_credit_card_number} = $save_number if length($save_number);
-		$CGI::values{mv_credit_card_cvv2}   = $save_cvv2   if length($save_cvv2);
+
+		for(my $i = 0; $i < @NoHistory; $i++) {
+			next unless defined $save[$i];
+			$CGI::values{$NoHistory[$i]} = $save[$i];
+		}
 	}
 	return;
 }








More information about the interchange-cvs mailing list