diff options
author | Christopher Burger <burgerc@freeside.biz> | 2017-07-27 12:53:59 -0400 |
---|---|---|
committer | Christopher Burger <burgerc@freeside.biz> | 2017-08-02 16:51:33 -0400 |
commit | 67947b080e459db6ffd60e413dc50f4083d1e893 (patch) | |
tree | 37e4d09acccf41bed593f59a04b73d9c426f2e72 | |
parent | 7c4aa1aa6658cca33d7578e1468067b89f32f900 (diff) |
RT# 76905 - Created ability to delete payment account thru NG selfservice to test API change in ticket 74537
-rw-r--r-- | FS/FS/ClientAPI/MyAccount.pm | 1 | ||||
-rw-r--r-- | ng_selfservice/payment_accounts.php | 78 |
2 files changed, 79 insertions, 0 deletions
diff --git a/FS/FS/ClientAPI/MyAccount.pm b/FS/FS/ClientAPI/MyAccount.pm index a38bcd661..0bf594f2e 100644 --- a/FS/FS/ClientAPI/MyAccount.pm +++ b/FS/FS/ClientAPI/MyAccount.pm @@ -151,6 +151,7 @@ sub skin_info { personal.php Profile personal.php Personal Information + payment_accounts.php Payment Accounts password.php Change Password payment.php Payments diff --git a/ng_selfservice/payment_accounts.php b/ng_selfservice/payment_accounts.php new file mode 100644 index 000000000..e70142a0a --- /dev/null +++ b/ng_selfservice/payment_accounts.php @@ -0,0 +1,78 @@ +<? $title ='Payment Accounts'; include('elements/header.php'); ?> +<? $current_menu = 'payment_accounts.php'; include('elements/menu.php'); ?> +<H1>My Payment Accounts</H1> +<br> + +<? +if ( isset($_GET['action']) && $_GET['action'] ) { + $action = $_GET['action']; +} + +if ($action == 'deleteaccount') { + + if ( isset($_GET['paybynum']) && $_GET['paybynum'] ) { + if ( preg_match( '/^(\d+)$/', $_GET['paybynum'] ) ) { + $paybynum = $_GET['paybynum']; + $error = $freeside->delete_payby( array( + 'session_id' => $_COOKIE['session_id'], + 'custpaybynum' => $paybynum, + ) ); + } + else { + $error['error'] = 'Bad Payby Number'; + } + } + + if ( isset($error['error']) && $error['error'] ) { + $error = $error['error']; + } + else { + $error = "Account " . $paybynum . " Deleted"; + } + +?> + <FONT COLOR="red"><? echo $error ?></FONT> + <P> +<? +} + + $payment_info = $freeside->list_payby( array( + 'session_id' => $_COOKIE['session_id'], + ) ); + + if ( isset($payment_info['error']) && $payment_info['error'] ) { + $error = $payment_info['error']; + header('Location:index.php?error='. urlencode($error)); + die(); + } + + extract($payment_info); +?> + +<TABLE> + <TR> + <TD> </TD> + <TD>Type</TD> + <TD>Account Type</TD> + <TD>Account Mask</TD> + <TD>Bank Name</TD> + </TR> + +<? + foreach ($payby as $payaccount) { +?> + <TR> + <TD><A HREF="payment_accounts.php?action=deleteaccount&paybynum=<? echo $payaccount['custpaybynum'] ?>">delete</A></TD> + <TD><? echo $payaccount['payby'] ?></TD> + <TD><? echo $payaccount['paytype'] ?></TD> + <TD><? echo $payaccount['paymask'] ?></TD> + <TD><? echo htmlspecialchars($payaccount['payname']) ?></TD> + </TR> + <? + } + ?> + +</TABLE> + +<? include('elements/menu_footer.php'); ?> +<? include('elements/footer.php'); ?> |