X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Felements%2Fhandle_uri_query;h=b86ef0092368f439def73a0b358b1771c1b5a321;hb=70203e3be5de0331ba031d94972c274183c595d2;hp=eb7ea1ae11b35359a5dc1cb9c2460e1cd684d8d8;hpb=b5c4237a34aef94976bc343c8d9e138664fc3984;p=freeside.git diff --git a/httemplate/elements/handle_uri_query b/httemplate/elements/handle_uri_query index eb7ea1ae1..b86ef0092 100644 --- a/httemplate/elements/handle_uri_query +++ b/httemplate/elements/handle_uri_query @@ -1,8 +1,30 @@ +<%doc> + +Usage (before accessing any $cgi parameters): + +$m->comp('/elements/handle_uri_query'); + + <%init> + +#my %opt = @_; + if ( $cgi->param('redirect') ) { my $session = $cgi->param('redirect'); + my $maxrecords = $cgi->param('maxrecords'); + my $pref = $FS::CurrentUser::CurrentUser->option("redirect$session"); die "unknown redirect session $session\n" unless length($pref); $cgi = new CGI($pref); + + foreach my $param (grep /pay(info\d?|cvv)$/, $cgi->param) { + my $value = $cgi->param($param); + next unless length($value); + my $decrypted = FS::Record->decrypt( $value ); + $cgi->param($param, $decrypted); + } + + $cgi->param('maxrecords', $maxrecords) if $maxrecords =~ /^(\d+)$/; + }