Revert "RT# 79902 - fixed so change payment information link will still work when...
authorChristopher Burger <burgerc@freeside.biz>
Wed, 21 Nov 2018 12:46:31 +0000 (07:46 -0500)
committerChristopher Burger <burgerc@freeside.biz>
Wed, 21 Nov 2018 12:46:31 +0000 (07:46 -0500)
This reverts commit 3fc05ed5adb6cbfcd6aee27b2ae199cf95cd4224.

FS/FS/ClientAPI/MyAccount.pm
fs_selfservice/FS-SelfService/cgi/change_pay.html
fs_selfservice/FS-SelfService/cgi/selfservice.cgi

index bb3ca12..365a42b 100644 (file)
@@ -876,18 +876,12 @@ sub payment_info {
   $return{$_} = $cust_main->bill_location->get($_) 
     for qw(address1 address2 city state zip);
 
   $return{$_} = $cust_main->bill_location->get($_) 
     for qw(address1 address2 city state zip);
 
-  $p->{'payment_payby'} = $payment_info->{paybys} if !$p->{'payment_payby'};
-
   # look for stored cust_payby info
   #   only if we've been given a clear payment_payby (to avoid payname conflicts)
   # look for stored cust_payby info
   #   only if we've been given a clear payment_payby (to avoid payname conflicts)
-  if ($p->{'payment_payby'} =~ /^(CARD|CHEK)$/ || (ref($p->{'payment_payby'}))) {
-    my @search_payby = ();
-    if ($p->{'payment_payby'} eq 'CARD') { @search_payby = ('CARD','DCRD'); }
-    elsif ($p->{'payment_payby'} eq 'CHEK') { @search_payby = ('CHEK','DCHK'); }
-    elsif (ref($p->{'payment_payby'}) eq 'ARRAY') { @search_payby = @{$payment_info->{paybys}}; }
+  if ($p->{'payment_payby'} =~ /^(CARD|CHEK)$/) {
+    my @search_payby = ($p->{'payment_payby'} eq 'CARD') ? ('CARD','DCRD') : ('CHEK','DCHK');
     my ($cust_payby) = $cust_main->cust_payby(@search_payby);
     if ($cust_payby) {
     my ($cust_payby) = $cust_main->cust_payby(@search_payby);
     if ($cust_payby) {
-      $return{payby} = $cust_payby->payby;
       $return{payname} = $cust_payby->payname
                          || ( $cust_main->first. ' '. $cust_main->get('last') );
       $return{custpaybynum} = $cust_payby->custpaybynum;
       $return{payname} = $cust_payby->payname
                          || ( $cust_main->first. ' '. $cust_main->get('last') );
       $return{custpaybynum} = $cust_payby->custpaybynum;
index 75ceee8..f90f6d9 100644 (file)
@@ -14,7 +14,6 @@
 
   my $tail = qq(</TABLE>).
              qq(<INPUT TYPE="hidden" NAME="action" VALUE="process_change_pay">).
 
   my $tail = qq(</TABLE>).
              qq(<INPUT TYPE="hidden" NAME="action" VALUE="process_change_pay">).
-             qq(<INPUT TYPE="hidden" NAME="custpaybynum" VALUE="$custpaybynum">).
              qq(<BR>).
              qq(<INPUT TYPE="submit" NAME="process" ).
              qq(VALUE="Save payment information"> ).
              qq(<BR>).
              qq(<INPUT TYPE="submit" NAME="process" ).
              qq(VALUE="Save payment information"> ).
@@ -61,6 +60,9 @@
   delete $options{'DCRD'} unless $payby eq 'DCRD' || ! exists $options{'CARD'};
   delete $options{'DCHK'} unless $payby eq 'DCHK' || ! exists $options{'CHEK'};
 
   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,
   HTML::Widgets::SelectLayers->new(
     options => \%options,
     selected_layer => $payby,
index 6986405..6eab11d 100755 (executable)
@@ -12,7 +12,7 @@ use Date::Format;
 use Date::Parse 'str2time';
 use Number::Format 1.50;
 use FS::SelfService qw(
 use Date::Parse 'str2time';
 use Number::Format 1.50;
 use FS::SelfService qw(
-  access_info login_info login customer_info edit_info insert_payby update_payby
+  access_info login_info login customer_info edit_info insert_payby update_payby 
   invoice payment_info process_payment realtime_collect process_prepay
   list_pkgs order_pkg signup_info order_recharge
   part_svc_info provision_acct provision_external provision_phone provision_forward
   invoice payment_info process_payment realtime_collect process_prepay
   list_pkgs order_pkg signup_info order_recharge
   part_svc_info provision_acct provision_external provision_phone provision_forward
@@ -388,9 +388,8 @@ sub process_change_ship {
 sub process_change_pay {
         my $postal = $cgi->param( 'postal_invoicing' );
         my $payby  = $cgi->param( 'payby' );
 sub process_change_pay {
         my $postal = $cgi->param( 'postal_invoicing' );
         my $payby  = $cgi->param( 'payby' );
-        $cgi->param('paydate', $cgi->param('year') . '-' . $cgi->param('month') . '-01');
         my @list =
         my @list =
-          qw( payby payinfo payinfo1 payinfo2 month year paydate payname custpaybynum
+          qw( payby payinfo payinfo1 payinfo2 month year payname
               address1 address2 city county state zip country auto paytype
               paystate ss stateid stateid_state invoicing_list
             );
               address1 address2 city county state zip country auto paytype
               paystate ss stateid stateid_state invoicing_list
             );
@@ -408,11 +407,7 @@ sub process_change_pay {
           };
         }
 
           };
         }
 
-        if (FS::SelfService->can('update_payby')) {
-          if ($cgi->param( 'custpaybynum' )) { _process_change_payby( 'change_pay', @list ); }
-          else { _process_insert_payby( 'change_pay', @list ); }
-        }
-        else { _process_change_info( 'change_pay', @list ); }
+        _process_change_info( 'change_pay', @list );
 }
 
 sub process_change_creditcard_pay {
 }
 
 sub process_change_creditcard_pay {