summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Burger <burgerc@freeside.biz>2017-07-27 12:53:59 -0400
committerChristopher Burger <burgerc@freeside.biz>2017-08-02 14:12:38 -0400
commit540a023ebf12be62f8f543579a3ae15399a560fe (patch)
tree730abf42a7aaf946e1500eb45177d9a2ee119d13
parentf07c85e5f8e2ce612d71fea145da63f61ae6ba2f (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.pm1
-rw-r--r--ng_selfservice/payment_accounts.php78
2 files changed, 79 insertions, 0 deletions
diff --git a/FS/FS/ClientAPI/MyAccount.pm b/FS/FS/ClientAPI/MyAccount.pm
index 5c86b78..99c5f74 100644
--- a/FS/FS/ClientAPI/MyAccount.pm
+++ b/FS/FS/ClientAPI/MyAccount.pm
@@ -152,6 +152,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 0000000..e70142a
--- /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>&nbsp;</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'); ?>