summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Burger <burgerc@freeside.biz>2018-11-21 07:46:31 -0500
committerChristopher Burger <burgerc@freeside.biz>2018-11-21 07:46:31 -0500
commitafb1c3d32628a6778c56fd3ff356dfaaa6ac0c58 (patch)
tree1dcb95e983e9dae22f10fb4cafc3af62380457e2
parent69df93bdea1c7692de8c7d11a9bee04dbd9e1ff9 (diff)
Revert "RT# 79902 - fixed so change payment information link will still work when upgraded from V3 to V4 and restores functionality in V3"
This reverts commit 3fc05ed5adb6cbfcd6aee27b2ae199cf95cd4224.
-rw-r--r--FS/FS/ClientAPI/MyAccount.pm10
-rw-r--r--fs_selfservice/FS-SelfService/cgi/change_pay.html4
-rwxr-xr-xfs_selfservice/FS-SelfService/cgi/selfservice.cgi11
3 files changed, 8 insertions, 17 deletions
diff --git a/FS/FS/ClientAPI/MyAccount.pm b/FS/FS/ClientAPI/MyAccount.pm
index bb3ca1265..365a42b87 100644
--- a/FS/FS/ClientAPI/MyAccount.pm
+++ b/FS/FS/ClientAPI/MyAccount.pm
@@ -876,18 +876,12 @@ sub payment_info {
$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)
- 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) {
- $return{payby} = $cust_payby->payby;
$return{payname} = $cust_payby->payname
|| ( $cust_main->first. ' '. $cust_main->get('last') );
$return{custpaybynum} = $cust_payby->custpaybynum;
diff --git a/fs_selfservice/FS-SelfService/cgi/change_pay.html b/fs_selfservice/FS-SelfService/cgi/change_pay.html
index 75ceee8f7..f90f6d92b 100644
--- a/fs_selfservice/FS-SelfService/cgi/change_pay.html
+++ b/fs_selfservice/FS-SelfService/cgi/change_pay.html
@@ -14,7 +14,6 @@
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"> ).
@@ -61,6 +60,9 @@
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,
diff --git a/fs_selfservice/FS-SelfService/cgi/selfservice.cgi b/fs_selfservice/FS-SelfService/cgi/selfservice.cgi
index 698640574..6eab11dae 100755
--- a/fs_selfservice/FS-SelfService/cgi/selfservice.cgi
+++ b/fs_selfservice/FS-SelfService/cgi/selfservice.cgi
@@ -12,7 +12,7 @@ use Date::Format;
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
@@ -388,9 +388,8 @@ sub process_change_ship {
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 =
- 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
);
@@ -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 {