From f096f7efd2093da376b9a31e3e5a872577bdc9b4 Mon Sep 17 00:00:00 2001 From: ivan Date: Fri, 29 Nov 2002 05:14:21 +0000 Subject: [PATCH] accept unmunged state/county/country --- fs_signup/FS-SignupClient/cgi/signup.cgi | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/fs_signup/FS-SignupClient/cgi/signup.cgi b/fs_signup/FS-SignupClient/cgi/signup.cgi index b6cc08a47..dc242bdcf 100755 --- a/fs_signup/FS-SignupClient/cgi/signup.cgi +++ b/fs_signup/FS-SignupClient/cgi/signup.cgi @@ -1,6 +1,6 @@ #!/usr/bin/perl -Tw # -# $Id: signup.cgi,v 1.33 2002-11-28 10:54:13 ivan Exp $ +# $Id: signup.cgi,v 1.34 2002-11-29 05:14:21 ivan Exp $ use strict; use vars qw( @payby $cgi $locales $packages $pops $init_data $error @@ -143,11 +143,21 @@ $cgi = new CGI; if ( defined $cgi->param('magic') ) { if ( $cgi->param('magic') eq 'process' ) { - $cgi->param('state') =~ /^(\w*)( \(([\w ]+)\))? ?\/ ?(\w+)$/ - or die "Oops, illegal \"state\" param: ". $cgi->param('state'); - $state = $1; - $county = $3 || ''; - $country = $4; + if ( $cgi->param('state') =~ /^(\w*)( \(([\w ]+)\))? ?\/ ?(\w+)$/ ) { + $state = $1; + $county = $3 || ''; + $country = $4; + } elsif ( $cgi->param('state') =~ /^(\w*)$/ ) { + $state = $1; + $cgi->param('county') =~ /^([\w ]*)$/ + or die "illegal county: ". $cgi->param('county'); + $county = $1; + $cgi->param('country') =~ /^(\w+)$/ + or die "illegal country: ". $cgi->param('country'); + $country = $1; + } else { + die "illegal state: ". $cgi->param('state'); + } $payby = $cgi->param('payby'); $payinfo = $cgi->param( $payby. '_payinfo' ); -- 2.11.0