1 <%= include('header', 'Change payment information') %>
4 $OUT .= qq!<FONT SIZE="+1" COLOR="#ff0000">Error: $error</FONT><BR><BR>!;
7 <FORM NAME="OneTrueForm" METHOD="POST" ACTION="<%=$selfurl%>" onSubmit="document.OneTrueForm.process.disabled=true">
10 use HTML::Widgets::SelectLayers;
12 my $preauto = '<TR><TD COLSPAN=3><INPUT TYPE="checkbox" NAME="auto" VALUE="1"';
13 my $postauto = '>Charge future payments to this card automatically</TD></TR>';
15 my $tail = qq(</TABLE>).
16 qq(<INPUT TYPE="hidden" NAME="action" VALUE="process_change_pay">).
18 qq(<INPUT TYPE="submit" NAME="process" ).
19 qq(VALUE="Save payment information"> ).
20 qq(<!-- onClick="this.disabled=true"> -->);
24 'BILL' => include('bill'),
25 'CARD' => include('card')."$preauto CHECKED $postauto",
26 'DCRD' => include('card')."$preauto $postauto",
27 'CHEK' => include('check')."$preauto CHECKED $postauto",
28 'DCHK' => include('check')."$preauto $postauto",
30 my %payby_index = ( 'CARD' => qq/Credit Card/,
31 'DCRD' => qq/Credit Card/,
34 'LECB' => qq/Phone Bill Billing/,
35 'BILL' => qq/Billing/,
36 'COMP' => qq/Complimentary/,
37 'PREP' => qq/Prepaid Card/,
38 'PREPAY' => qq/Prepaid Card/,
41 ## Don't show CHEK or DCHK option if ACH is read only
42 delete( $payby_index{'CHEK'} ) unless !$ach_read_only;
43 delete( $payby_index{'DCHK'} ) unless !$ach_read_only;
45 tie my %options, 'Tie::IxHash', ();
46 foreach my $payby_option ( grep { exists( $payby_index{$_} ) } @paybys ) {
47 $options{$payby_option} = $payby_index{$payby_option};
49 $options{$payby} = $payby_index{$payby}
50 unless exists($options{$payby});
52 #don't want to show multiple "Credit card" or "Check" options
59 delete( $options{ $paybyremove{$payby} } );
60 delete $options{'DCRD'} unless $payby eq 'DCRD' || ! exists $options{'CARD'};
61 delete $options{'DCHK'} unless $payby eq 'DCHK' || ! exists $options{'CHEK'};
63 ## set default layer to first payby.
64 @p = keys %options; $payby = $p[0];
66 HTML::Widgets::SelectLayers->new(
68 selected_layer => $payby,
69 # form_name => 'dummy',
70 # form_action => 'dummy.cgi',
71 layer_callback => sub { my $layer = shift; return '<TABLE BGCOLOR="#cccccc">'.$paybychecked{$layer}.qq!<INPUT TYPE="hidden" NAME="payby" VALUE="$layer">$tail!; },
76 <%= include('footer') %>