diff options
| author | ivan <ivan> | 2002-11-29 05:14:19 +0000 | 
|---|---|---|
| committer | ivan <ivan> | 2002-11-29 05:14:19 +0000 | 
| commit | cf7dde567416fb1c3b7108267341a90bf59695b0 (patch) | |
| tree | 52824482bb7e7f9e7ad7e393cb86630369cf7782 /fs_signup/FS-SignupClient | |
| parent | 221b423fecf5380c0311f0f3fee4e47ef1494053 (diff) | |
accept unmunged state/county/country
Diffstat (limited to 'fs_signup/FS-SignupClient')
| -rwxr-xr-x | fs_signup/FS-SignupClient/cgi/signup.cgi | 22 | 
1 files changed, 16 insertions, 6 deletions
| diff --git a/fs_signup/FS-SignupClient/cgi/signup.cgi b/fs_signup/FS-SignupClient/cgi/signup.cgi index e45c85056..ca40e8126 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.29.2.3 2002-11-28 10:54:28 ivan Exp $ +# $Id: signup.cgi,v 1.29.2.4 2002-11-29 05:14:19 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' ); | 
