RT# 39340 - removed test code
[freeside.git] / fs_selfservice / FS-SelfService / cgi / change_pay.html
index d26abfa..f90f6d9 100644 (file)
@@ -1,22 +1,5 @@
-<HTML><HEAD><TITLE>MyAccount</TITLE></HEAD>
-<BODY BGCOLOR="#eeeeee">
-<script language="JavaScript"><!--
-  var mywindow = -1;
-  function myopen(filename,windowname,properties) {
-    myclose();
-    mywindow = window.open(filename,windowname,properties);
-  }
-  function myclose() {
-    if ( mywindow != -1 )
-      mywindow.close();
-    mywindow = -1
-  }
-//--></script>
-<FONT SIZE=5>MyAccount</FONT><BR><BR>
-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
-<%= include('myaccount_menu') %>
-<TD VALIGN="top">
-<FONT SIZE=4>Change payment information</FONT><BR><BR>
+<%= include('header', 'Change payment information') %>
+
 <%= if ( $error ) { 
   $OUT .= qq!<FONT SIZE="+1" COLOR="#ff0000">Error: $error</FONT><BR><BR>!;
   }  ''; %>
@@ -29,7 +12,7 @@
   my $preauto = '<TR><TD COLSPAN=3><INPUT TYPE="checkbox" NAME="auto" VALUE="1"';
   my $postauto = '>Charge future payments to this card automatically</TD></TR>';
 
-  my $tail = qq(</TABLE><INPUT TYPE="hidden" NAME="session" VALUE="$session_id">). 
+  my $tail = qq(</TABLE>).
              qq(<INPUT TYPE="hidden" NAME="action" VALUE="process_change_pay">).
              qq(<BR>).
              qq(<INPUT TYPE="submit" NAME="process" ).
                       'LECB'   => qq/Phone Bill Billing/,
                       'BILL'   => qq/Billing/,
                       'COMP'   => qq/Complimentary/,
+                      'PREP'   => qq/Prepaid Card/,
                       'PREPAY' => qq/Prepaid Card/,
                     );
+
+  ## Don't show CHEK or DCHK option if ACH is read only
+  delete( $payby_index{'CHEK'} ) unless !$ach_read_only;
+  delete( $payby_index{'DCHK'} ) unless !$ach_read_only;
+
   tie my %options, 'Tie::IxHash', ();
-  foreach my $payby_option ( @paybys ) {
+  foreach my $payby_option ( grep { exists( $payby_index{$_} ) } @paybys ) {
     $options{$payby_option} = $payby_index{$payby_option};
   }
   $options{$payby} = $payby_index{$payby}
     unless exists($options{$payby});
 
+  #don't want to show multiple "Credit card" or "Check" options
+  my %paybyremove = (
+    'CARD' => 'DCRD',
+    'DCRD' => 'CARD',
+    'CHEK' => 'DCHK',
+    'DCHK' => 'CHEK',
+  );
+  delete( $options{ $paybyremove{$payby} } );
+  delete $options{'DCRD'} unless $payby eq 'DCRD' || ! exists $options{'CARD'};
+  delete $options{'DCHK'} unless $payby eq 'DCHK' || ! exists $options{'CHEK'};
+
+  ## set default layer to first payby.
+  @p = keys %options; $payby = $p[0];
+
   HTML::Widgets::SelectLayers->new(
     options => \%options,
     selected_layer => $payby,
@@ -69,7 +72,5 @@
   )->html;
 
 %>
-</TD></TR></TABLE>
-<HR>
-<FONT SIZE="-2">powered by <a href="http://www.sisd.com/freeside">freeside</a></FONT>
-</BODY></HTML>
+
+<%= include('footer') %>