summaryrefslogtreecommitdiff
path: root/fs_selfservice/FS-SelfService/cgi/selfservice.cgi
diff options
context:
space:
mode:
Diffstat (limited to 'fs_selfservice/FS-SelfService/cgi/selfservice.cgi')
-rw-r--r--fs_selfservice/FS-SelfService/cgi/selfservice.cgi19
1 files changed, 15 insertions, 4 deletions
diff --git a/fs_selfservice/FS-SelfService/cgi/selfservice.cgi b/fs_selfservice/FS-SelfService/cgi/selfservice.cgi
index 365d816e7..38416c593 100644
--- a/fs_selfservice/FS-SelfService/cgi/selfservice.cgi
+++ b/fs_selfservice/FS-SelfService/cgi/selfservice.cgi
@@ -139,7 +139,7 @@ sub _process_change_info {
sub process_change_bill {
_process_change_info( 'change_bill',
qw( first last company address1 address2 city state
- county state zip country daytime night fax )
+ county zip country daytime night fax )
);
}
@@ -156,11 +156,22 @@ sub process_change_ship {
}
sub process_change_pay {
- _process_change_info( 'change_pay',
+ my $postal = $cgi->param( 'postal_invoicing' );
+ my @list =
qw( payby payinfo payinfo1 payinfo2 month year payname
address1 address2 city county state zip country auto paytype
- paystate ss stateid stateid_state )
- );
+ paystate ss stateid stateid_state invoicing_list
+ );
+ push @list, 'postal_invoicing' if $postal;
+ unless ( $postal || $cgi->param( 'invoicing_list' ) ) {
+ $action = 'change_pay';
+ return {
+ %{&change_pay()},
+ $cgi->Vars,
+ 'error' => '<FONT COLOR="#FF0000">Postal or email required.</FONT>',
+ };
+ }
+ _process_change_info( 'change_pay', @list );
}
sub view_invoice {