diff options
author | Christopher Burger <burgerc@freeside.biz> | 2018-10-30 11:07:15 -0400 |
---|---|---|
committer | Christopher Burger <burgerc@freeside.biz> | 2018-10-30 11:07:15 -0400 |
commit | 3fc05ed5adb6cbfcd6aee27b2ae199cf95cd4224 (patch) | |
tree | 6e6b4f6b07dace617b68775c82ebce52107168ff /fs_selfservice/FS-SelfService/cgi | |
parent | 723793ec73af5af8c7d077771851829cf8f82634 (diff) |
RT# 79902 - fixed so change payment information link will still work when upgraded from V3 to V4 and restores functionality in V3
Diffstat (limited to 'fs_selfservice/FS-SelfService/cgi')
-rw-r--r-- | fs_selfservice/FS-SelfService/cgi/change_pay.html | 4 | ||||
-rwxr-xr-x | fs_selfservice/FS-SelfService/cgi/selfservice.cgi | 11 |
2 files changed, 9 insertions, 6 deletions
diff --git a/fs_selfservice/FS-SelfService/cgi/change_pay.html b/fs_selfservice/FS-SelfService/cgi/change_pay.html index f90f6d92b..75ceee8f7 100644 --- a/fs_selfservice/FS-SelfService/cgi/change_pay.html +++ b/fs_selfservice/FS-SelfService/cgi/change_pay.html @@ -14,6 +14,7 @@ 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"> ). @@ -60,9 +61,6 @@ 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 6eab11dae..698640574 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,8 +388,9 @@ 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 payname + qw( payby payinfo payinfo1 payinfo2 month year paydate payname custpaybynum address1 address2 city county state zip country auto paytype paystate ss stateid stateid_state invoicing_list ); @@ -407,7 +408,11 @@ sub process_change_pay { }; } - _process_change_info( 'change_pay', @list ); + 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 ); } } sub process_change_creditcard_pay { |