[freeside-commits] branch master updated. 3237b4cfdf3e507d5d4e04f2d3cf9b925d5ee953
Christopher Burger
burgerc at 420.am
Tue May 2 06:01:33 PDT 2017
The branch, master has been updated
via 3237b4cfdf3e507d5d4e04f2d3cf9b925d5ee953 (commit)
from afe6bb2515f2bde29a74c056221fd154dc10001f (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 3237b4cfdf3e507d5d4e04f2d3cf9b925d5ee953
Author: Christopher Burger <burgerc at freeside.biz>
Date: Tue May 2 09:00:43 2017 -0400
RT# 73993 updated ngselfservice to allow for package change.
diff --git a/ng_selfservice/packages_change.php b/ng_selfservice/packages_change.php
new file mode 100644
index 0000000..8b4386c
--- /dev/null
+++ b/ng_selfservice/packages_change.php
@@ -0,0 +1,80 @@
+<? $title ='Change Package'; include('elements/header.php'); ?>
+<? $current_menu = 'services.php'; include('elements/menu.php'); ?>
+<?
+
+$customer_info = $freeside->customer_info_short( array(
+ 'session_id' => $_COOKIE['session_id'],
+) );
+
+$list_pkgs = $freeside->list_pkgs( array(
+ 'session_id' => $_COOKIE['session_id'],
+) );
+
+if ( isset($list_pkgs['error']) && $list_pkgs['error'] ) {
+ $error = $list_pkgs['error'];
+ header('Location:index.php?error='. urlencode($error));
+ die();
+}
+
+extract($list_pkgs);
+
+$get_params = array( 'pkgnum', 'pkg' );
+foreach ( $get_params AS $param ) {
+ $params[$param] = $_GET[$param];
+}
+
+$pkgnum = $_GET['pkgnum'];
+$pkg = $_GET['pkg'];
+
+$pkgselect = $freeside->mason_comp( array(
+ 'session_id' => $_COOKIE['session_id'],
+ 'comp' => '/elements/select-part_pkg.html',
+ 'args' => array( 'custnum' => $customer_info['custnum'],
+ 'curr_value' => 'current_value',
+ ),
+ )
+);
+
+if ( isset($pkgselect['error']) && $pkgselect['error'] ) {
+ $error = $pkgselect['error'];
+ header('Location:index.php?error='. urlencode($error));
+ die();
+}
+
+?>
+
+<SCRIPT TYPE="text/javascript">
+function enable_change_pkg () {
+ if ( document.ChangePkgForm.pkgpart_svcpart.selectedIndex > 0 ) {
+ document.ChangePkgForm.submit.disabled = false;
+ } else {
+ document.ChangePkgForm.submit.disabled = true;
+ }
+}
+</SCRIPT>
+
+<FONT SIZE=4>Purchase replacement package for "<? echo $pkg; ?>"</FONT><BR><BR>
+
+<? include('elements/error.php'); ?>
+
+<FORM NAME="ChangePkgForm" ACTION="process_packages_change.php" METHOD=POST>
+<TABLE BGCOLOR="#cccccc" BORDER=0 CELLSPACING=0>
+
+<TR>
+ <TD COLSPAN=2>
+ <TABLE><TR><TD> <? echo $pkgselect['output']; ?>
+
+ </TD>
+</TR>
+
+</TABLE>
+<BR>
+<INPUT TYPE="hidden" NAME="custnum" VALUE="<? echo $customer_info['custnum'] ?>">
+<INPUT TYPE="hidden" NAME="pkgnum" VALUE="<? echo $params['pkgnum'] ?>">
+<INPUT TYPE="hidden" NAME="pkg" VALUE="<? echo $params['pkg'] ?>">
+<INPUT TYPE="hidden" NAME="action" VALUE="process_change_pkg">
+<INPUT NAME="submit" TYPE="submit" VALUE="Change Package">
+</FORM>
+
+<? include('elements/menu_footer.php'); ?>
+<? include('elements/footer.php'); ?>
\ No newline at end of file
diff --git a/ng_selfservice/process_packages_change.php b/ng_selfservice/process_packages_change.php
new file mode 100644
index 0000000..114cc6b
--- /dev/null
+++ b/ng_selfservice/process_packages_change.php
@@ -0,0 +1,89 @@
+<? $title ='Change Package'; include('elements/header.php'); ?>
+<? $current_menu = 'services.php'; include('elements/menu.php'); ?>
+
+<?
+
+require_once('elements/session.php');
+
+$results = array();
+
+$params = array( 'custnum', 'pkgpart', 'pkgnum' );
+
+$matches = array();
+if ( preg_match( '/^(\d+)_(\d+)$/', $_POST['pkgpart_svcpart'], $matches ) ) {
+ $_POST['pkgpart'] = $matches[1];
+ $_POST['svcpart'] = $matches[2];
+ $params[] = 'svcpart';
+ $svcdb = $_POST['svcdb'];
+ if ( $svcdb == 'svc_acct' ) { $params[] = 'domsvc'; }
+} else {
+ $svcdb = 'svc_acct';
+}
+
+if ( $svcdb == 'svc_acct' ) {
+
+ array_push($params, 'username', '_password', '_password2', 'sec_phrase', 'popnum' );
+
+ #if ( strlen($_POST['_password']) == 0 ) {
+ # $results['error'] = 'Empty password';
+ #}
+ #if ( $_POST['_password'] != $_POST['_password'] ) {
+ # $results['error'] = 'Passwords do not match';
+ # $_POST['_password'] = '';
+ # $_POST['_password2'] = '';
+ #}
+
+} elseif ( $svcdb == 'svc_phone' ) {
+
+ array_push($params, 'phonenum', 'sip_password', 'pin', 'phone_name' );
+
+} else {
+ die("$svcdb not handled on process_change_pkg yet");
+}
+
+if ( ! $results['error'] ) {
+
+ $change_pkg = array(
+ 'session_id' => $_COOKIE['session_id'],
+ );
+
+ foreach ( $params AS $param ) {
+ $change_pkg[$param] = $_POST[$param];
+ }
+
+ $results = $freeside->change_pkg($change_pkg);
+
+ echo $results;
+
+}
+
+# if ( $results->{'error'} ) {
+# $action = 'customer_change_pkg';
+# return {
+# $cgi->Vars,
+# %{customer_change_pkg()},
+# 'error' => '<FONT COLOR="#FF0000">'. $results->{'error'}. '</FONT>',
+# };
+# } else {
+# return $results;
+# }
+
+
+## reload below except pkgnum
+if ( isset($results['error']) && $results['error'] ) {
+ $error = $results['error'];
+# header('Location:services.php?error='. urlencode($error));
+# die();
+}
+
+#$pkgnum = $results['pkgnum'];
+
+#header("Location:services.php"); # #pkgnum ?
+## end reload
+?>
+<? include('elements/error.php'); ?>
+
+<FONT SIZE=4>Package Changed Su for "<? echo $pkg; ?>"</FONT><BR><BR>
+
+<? include('elements/menu_footer.php'); ?>
+<? include('elements/footer.php'); ?>
\ No newline at end of file
-----------------------------------------------------------------------
Summary of changes:
ng_selfservice/packages_change.php | 80 +++++++++++++++++++++++++
ng_selfservice/process_packages_change.php | 89 ++++++++++++++++++++++++++++
2 files changed, 169 insertions(+)
create mode 100644 ng_selfservice/packages_change.php
create mode 100644 ng_selfservice/process_packages_change.php
More information about the freeside-commits
mailing list