X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=fs_selfservice%2FFS-SelfService%2Fcgi%2Fsignup.cgi;h=5c9d11c0168a9a07e0635a40662ae154ea226f90;hb=a816e075c54631250faed653d4ec7b69f727e93a;hp=7d1679b5c6f5b66b0927768b43d7b38f917b4e99;hpb=995a145c931164347683071c95c6754379d36604;p=freeside.git diff --git a/fs_selfservice/FS-SelfService/cgi/signup.cgi b/fs_selfservice/FS-SelfService/cgi/signup.cgi index 7d1679b5c..5c9d11c01 100755 --- a/fs_selfservice/FS-SelfService/cgi/signup.cgi +++ b/fs_selfservice/FS-SelfService/cgi/signup.cgi @@ -229,10 +229,11 @@ if ( $magic eq 'process' || $action eq 'process_signup' ) { payby payinfo paycvv paydate payname paystate paytype invoicing_list referral_custnum promo_code reg_code + override_ban_warn pkgpart refnum agentnum username sec_phrase _password popnum mac_addr - countrycode phonenum sip_password pin + countrycode phonenum sip_password pin prepaid_shortform ), grep { /^snarf_/ } $cgi->param ), @@ -246,13 +247,22 @@ if ( $magic eq 'process' || $action eq 'process_signup' ) { print_decline(); } elsif ( $error eq '_collect' ) { map { $cgi->param($_, $rv->{$_}) } - qw( popup_url reference collectitems amount ); - print_collect(); + qw( popup_url reference amount ); + print_collect($rv); } elsif ( $error ) { + #fudge the snarf info no strict 'refs'; ${$_} = $cgi->param($_) foreach grep { /^snarf_/ } $cgi->param; + + if ( $error =~ /^_duplicate_(card|ach)$/ ) { + my $what = ($1 eq 'card') ? 'Credit card' : 'Electronic check'; + $error = "Warning: $what already used to sign up recently"; + $init_data->{'override_ban_warn'} = 1; + } + print_form(); + } else { print_okay( 'pkgpart' => scalar($cgi->param('pkgpart')), @@ -277,7 +287,7 @@ if ( $magic eq 'process' || $action eq 'process_signup' ) { sub print_form { - $error = "Error: $error" if $error; + $error = "Error: $error" if $error && $error !~ /^Warning:/i; my $r = { $cgi->Vars, @@ -292,6 +302,8 @@ sub print_form { #$cgi->delete('init_popstate'); $r->{self_url} = $cgi->self_url; + $r->{prepaid_shortform} = $cgi->param('prepaid_shortform'); + print $cgi->header( '-expires' => 'now' ), $signup_template->fill_in( PACKAGE => 'FS::SelfService::_signupcgi', HASH => $r @@ -302,9 +314,11 @@ sub print_collect { $error = "Error: $error" if $error; + my $rv = shift || {}; my $r = { $cgi->Vars, %{$init_data}, + %$rv, 'error' => $error, }; @@ -314,6 +328,7 @@ sub print_collect { $r->{self_url} = $cgi->self_url; print $cgi->header( '-expires' => 'now' ), + $collect_template->fill_in( PACKAGE => 'FS::SelfService::_signupcgi', HASH => $r ); @@ -442,23 +457,25 @@ sub collect_default { #html to use if there is a collect phase <<'END'; Pay now Pay now

- - - - - - +<%= +# +# +# +# +# +# +%> You are about to contact our payment processor to pay <%= $amount %> for <%= $pkg %>.

Your transaction reference number is <%= $reference %>

-
+ <%= - my %itemhash = @collectitems; + my %itemhash = @collectitems ; foreach my $input (keys %itemhash) { $OUT .= qq!!; }