Odyssey
hcuMobilePay.data
1 <?php
2 /*
3  * File: hcuMobilePay.data
4  * Purpose: Handle the CRUD portion of the Alerts. When returning the requested alert data
5  * do it in a JSON format, for the client to display accordingly.
6  *
7  *
8  * Call this script with the following parameters
9  * action - what the client side is requesting.
10  *
11  * Types:
12  *
13  * Returns JSON OBJECT.
14  */
15 
16  $serviceViewFromCUAdmin = (isset($serviceViewFromCUAdmin) ? $serviceViewFromCUAdmin : false);
17  if (!$serviceViewFromCUAdmin) {
18  // ** SET SCRIPT LEVEL VARIABLES
19  $serviceShowInfo = true;
20  $serviceLoadMenu = true;
21  $serviceShowMenu = true;
22  $serviceLiveCheck = true;
23  // ** INCLUDE MAIN GLOBAL SCRIPT -- Handles security / global variable values
24  require_once(dirname(__FILE__) . '/../library/hcuService.i');
25  }
26 
27  require_once(dirname(__FILE__) . '/hcuMobilePay.plugin');
28  require_once(dirname(__FILE__) . '../../../shared/library/cutrusted.i');
29 
30 PermCheckFeatureScreen($dbh, $HB_ENV, $MC, FEATURE_BASIC);
31  $aryInfo = array();
32  $aryResult = array();
33 
34 try {
35  // ** SET HOMECU FLAGS
36  $serviceShowInfo = true;
37  $serviceLoadMenu = true;
38  $serviceShowMenu = true;
39  // ** INCLUDE MAIN GLOBAL SCRIPT -- Handles security / global variable values
40  // hcuService will be returning a status object: e.g. ["homecuErrors":{[{"message":"message1"}...{"message":"messageN"}}]
41 
42  // ** IMPORT FORM VALUES
43  // $HB_ENV["SYSENV"]["logger"]->info( print_r( "data mp type" . $HB_ENV['HCUPOST']['mp_type'], true ) );
44  // switch ($HB_ENV['HCUPOST']['mp_type'] ) {
45  // case "STOP":
46  // $dms_ok=array("mp_token" => "string","mp_type"=>"string");
47  // dms_import_v2($HB_ENV, 'HCUPOST', $dms_ok);
48  // break;
49  // case "History":
50  // case "Scheduled":
51  // $dms_ok=array("mp_token" => "string","mp_type"=>"string");
52  // dms_import_v2($HB_ENV, 'HCUPOST', $dms_ok);
53  // break;
54  // default:
55  // // ** do nothing
56  // }
57 
58  // ** IMPORT FORM VALUES
59  $inputVars = array();
60  $varOk = array(
61  "mp_token" => array('filter' => FILTER_SANITIZE_STRING),
62  "mp_type" => array('filter' => FILTER_SANITIZE_STRING),
63  "txnid" => array('filter' => FILTER_SANITIZE_STRING),
64  "toid" => array('filter' => FILTER_SANITIZE_STRING),
65  "fromid" => array('filter' => FILTER_SANITIZE_STRING),
66  "amount" => array('filter' => FILTER_SANITIZE_NUMBER_FLOAT, 'options' => array( "flags" => FILTER_FLAG_ALLOW_FRACTION ) ),
67  "vPayeeId" => array('filter' => FILTER_SANITIZE_STRING),
68  "payFrom" => array('filter' => FILTER_SANITIZE_STRING),
69  "paydate" => array('filter' => FILTER_SANITIZE_STRING),
70  "freq" => array('filter' => FILTER_SANITIZE_STRING),
71  "paynum" => array('filter' => FILTER_SANITIZE_STRING),
72  "enddate" => array('filter' => FILTER_SANITIZE_STRING),
73  "duration" => array('filter' => FILTER_SANITIZE_STRING),
74  "paymentType" => array('filter' => FILTER_SANITIZE_STRING),
75  "mp_txnid" => array('filter' => FILTER_SANITIZE_STRING),
76  "mpVendor" => array('filter' => FILTER_SANITIZE_STRING),
77  "mpAccount" => array('filter' => FILTER_SANITIZE_STRING),
78  "firstName" => array('filter' => FILTER_SANITIZE_STRING, 'options' => array('flags' => FILTER_FLAG_NO_ENCODE_QUOTES)),
79  "lastName" => array('filter' => FILTER_SANITIZE_STRING, 'options' => array('flags' => FILTER_FLAG_NO_ENCODE_QUOTES)),
80  "addr1" => array('filter' => FILTER_SANITIZE_STRING),
81  "addr2" => array('filter' => FILTER_SANITIZE_STRING),
82  "city" => array('filter' => FILTER_SANITIZE_STRING, 'options' => array('flags' => FILTER_FLAG_NO_ENCODE_QUOTES)),
83  "state" => array('filter' => FILTER_SANITIZE_STRING),
84  "zip" => array('filter' => FILTER_SANITIZE_STRING),
85  "phone" => array('filter' => FILTER_SANITIZE_STRING),
86  "email" => array('filter' => FILTER_SANITIZE_STRING),
87  "accountName" => array('filter' => FILTER_SANITIZE_STRING, 'options' => array('flags' => FILTER_FLAG_NO_ENCODE_QUOTES)),
88  "accountId" => array('filter' => FILTER_SANITIZE_STRING),
89  "ssn" => array('filter' => FILTER_SANITIZE_STRING),
90  "temppass" => array('filter' => FILTER_SANITIZE_STRING),
91  "name" => array('filter' => FILTER_SANITIZE_STRING, 'options' => array('flags' => FILTER_FLAG_NO_ENCODE_QUOTES)),
92  "payeeName" => array('filter' => FILTER_SANITIZE_STRING, 'options' => array('flags' => FILTER_FLAG_NO_ENCODE_QUOTES)),
93  "subId" => array('filter' => FILTER_SANITIZE_STRING),
94  "accountNum" => array('filter' => FILTER_SANITIZE_STRING),
95  "subName" => array('filter' => FILTER_SANITIZE_STRING, 'options' => array('flags' => FILTER_FLAG_NO_ENCODE_QUOTES)),
96  "nickName" => array('filter' => FILTER_SANITIZE_STRING, 'options' => array('flags' => FILTER_FLAG_NO_ENCODE_QUOTES)),
97  "routingNum" => array('filter' => FILTER_SANITIZE_STRING),
98  "payeeType" => array('filter' => FILTER_SANITIZE_STRING),
99  "accountType" => array('filter' => FILTER_SANITIZE_STRING),
100  "payeeId" => array('filter' => FILTER_SANITIZE_STRING),
101  "p2pType" => array('filter' => FILTER_SANITIZE_STRING),
102  "secret" => array('filter' => FILTER_SANITIZE_STRING, 'options' => array('flags' => FILTER_FLAG_NO_ENCODE_QUOTES)),
103  "delete" => array('filter' => FILTER_SANITIZE_STRING),
104  );
105 
106  HCU_ImportVars( $inputVars, "", $varOk );
107 
108  header('Content-Type: application/json');
109 
110  $iPayparms_ary = Array();
111 
112  if ( strpos( $inputVars['mp_token'], "=" ) !== false ||
113  strpos( $inputVars['mp_token'], "+" ) !== false ) {
114  // already decoded
115  $decodedToken = $inputVars['mp_token'];
116  $encodedToken = urlencode( $inputVars['mp_token'] );
117  } else {
118  $encodedToken = $inputVars['mp_token'];
119  $decodedToken = urldecode( $inputVars['mp_token'] );
120  }
121  $commonString = hcu_decrypturl( $decodedToken, $HB_ENV['2factorkey']);
122 
123  parse_str( $commonString, $commonParms );
124 
125  $mpVendorKey = $commonParms["mpVendor"];
126  $mpDateModel = $commonParms["mpDateModel"];
127  $mpToken = $commonParms["mpToken"];
128  $mpName = $commonParms["mpName"];
129  $mpAccount = $commonParms["mpAccount"];
130 
131  switch ($inputVars['mp_type'] ) {
132  case "DATES":
133  $mobilePayParams = array();
134  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
135  $mobilePayParams["MP_ACTION"] = "MP_GETPAYMENTDATES";
136  $mobilePayParams["MP_ACCOUNT"]= $mpAccount;
137  $mobilePayParams["Token"] = $mpToken;
138  $mobilePayParams["PayeeId"] = $inputVars["vPayeeId"];
139 
140  $mobilePayResultAry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
141 
142  if ($mobilePayResultAry['status']['code'] != '000') {
143 
144  $aryErrors = array();
145  for ( $e = 0; $e < count( $mobilePayResultAry['status']['errors'] ); $e++ ) {
146  $aryErrors[] = $mobilePayResultAry['status']['errors'][$e];
147  }
148 
149  throw new Exception (json_encode($aryErrors));
150  }
151  $aryResult = $mobilePayResultAry;
152  break;
153  case "Accounts":
154  $mobilePayParams = array();
155  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
156  $mobilePayParams["MP_ACTION"] = "MP_ACCTLIST";
157  $mobilePayParams["MP_ACCOUNT"]= $mpAccount;
158  $mobilePayParams["AcctType"] = $inputVars["paymentType"] == "Transfer" ? "Transfer" : "Payment";
159  $mobilePayParams["Token"] = $mpToken;
160 
161  $mobilePayResultAry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
162 
163  if ($mobilePayResultAry['status']['code'] != '000') {
164 
165  $aryErrors = array();
166  for ( $e = 0; $e < count( $mobilePayResultAry['status']['errors'] ); $e++ ) {
167  $aryErrors[] = $mobilePayResultAry['status']['errors'][$e];
168  }
169 
170  throw new Exception (json_encode($aryErrors));
171  }
172  $aryResult = $mobilePayResultAry;
173  break;
174  case "SrcAccounts":
175  $mobilePayParams = array();
176  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
177  $mobilePayParams["MP_ACTION"] = "MP_SRCLIST";
178  $mobilePayParams["MP_ACCOUNT"]= $mpAccount;
179  $mobilePayParams["Token"] = $mpToken;
180 
181  $mobilePayResultAry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
182 
183  if ($mobilePayResultAry['status']['code'] != '000') {
184 
185  $aryErrors = array();
186  for ( $e = 0; $e < count( $mobilePayResultAry['status']['errors'] ); $e++ ) {
187  $aryErrors[] = $mobilePayResultAry['status']['errors'][$e];
188  }
189 
190  throw new Exception (json_encode($aryErrors));
191  }
192  $aryResult = $mobilePayResultAry;
193  break;
194  //Adding for hcu accounts ENR
195  case "cuAccounts":
196  $mobilePayParams = array();
197  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
198  $mobilePayParams["MP_ACTION"] = "HCU_ACCTLIST";
199  $mobilePayParams["MP_ACCOUNT"] = $mpAccount;
200  $mobilePayResultAry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
201 
202  if ($mobilePayResultAry['status']['code'] != '000') {
203  $aryErrors = array();
204  for ( $e = 0; $e < count( $mobilePayResultAry['status']['errors'] ); $e++ ) {
205  $aryErrors[] = $mobilePayResultAry['status']['errors'][$e];
206  }
207  throw new Exception (json_encode($aryErrors));
208  }
209  $aryResult = $mobilePayResultAry;
210  break;
211  case "StopPayment":
212  $mobilePayParams = array();
213  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
214  $mobilePayParams["MP_ACTION"] = "MP_STOPPMT";
215  $mobilePayParams["MP_ACCOUNT"]= $mpAccount;
216  $mobilePayParams["Token"] = $mpToken;
217  $mobilePayParams["TxnId"] = $inputVars["txnid"];
218 
219  $mobilePayResultAry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
220 
221  if ($mobilePayResultAry['status']['code'] != '000') {
222 
223  $aryErrors = array();
224  for ( $e = 0; $e < count( $mobilePayResultAry['status']['errors'] ); $e++ ) {
225  $aryErrors[] = $mobilePayResultAry['status']['errors'][$e];
226  }
227 
228  throw new Exception (json_encode($aryErrors));
229 
230  }
231  $aryResult = $mobilePayResultAry;
232  break;
233  case "Payment":
234  case "History":
235  case "Scheduled":
236  $mpType = $inputVars['mp_type'];
237 
238  $mobilePayParams = array();
239  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
240  $mobilePayParams["MP_ACTION"] = $mpType == "Scheduled" ? "MP_SCHEDULED" : "MP_HISTORY";
241  $mobilePayParams["MP_ACCOUNT"]= $mpAccount;
242  $mobilePayParams["Token"] = $mpToken;
243  $historyArry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
244 
245  if ($historyArry['status']['code'] != '000') {
246  $aryErrors = array();
247  for ( $e = 0; $e < count( $historyArry['status']['errors'] ); $e++ ) {
248  $aryErrors[] = $historyArry['status']['errors'][$e];
249  }
250 
251  throw new Exception (json_encode($aryErrors));
252  }
253  $aryResult = $historyArry;
254  break;
255  case "UpdatePayments":
256  $mpType = $inputVars['mp_type'];
257 
258  $mobilePayParams = array();
259  // if (HCU_array_key_exists('payFrom', $inputVars)) {
260  if (isset($inputVars['payFrom'])) {
261  $mobilePayParams["payFrom"] = $inputVars["payFrom"];
262  }
263  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
264  $mobilePayParams["MP_ACTION"] = "MP_EDITPMT";
265  $mobilePayParams["MP_ACCOUNT"]= $mpAccount;
266  $mobilePayParams["Token"] = $mpToken;
267  $mobilePayParams["TxnId"] = $inputVars["txnid"];
268  $mobilePayParams["ToId"] = $inputVars["toid"];
269  $mobilePayParams["FromId"] = $inputVars["fromid"];
270  $mobilePayParams["Amount"] = $inputVars["amount"];
271  $mobilePayParams["Date"] = $inputVars["paydate"];
272  $mobilePayParams["Freq"] = $inputVars["freq"];
273  $mobilePayParams["PayNum"] = $inputVars["paynum"];
274  $mobilePayParams["EndDate"] = $inputVars["enddate"];
275  $mobilePayParams["Duration"] = $inputVars["duration"];
276 
277  $historyArry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
278 
279  if ($historyArry['status']['code'] != '000') {
280  $aryErrors = array();
281  for ( $e = 0; $e < count( $historyArry['status']['errors'] ); $e++ ) {
282  $aryErrors[] = $historyArry['status']['errors'][$e];
283  }
284 
285  throw new Exception (json_encode($aryErrors));
286  }
287  $aryResult = $historyArry;
288  break;
289  case "GetSchedPayment":
290  $mpType = $inputVars['mp_type'];
291 
292  $mobilePayParams = array();
293  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
294  $mobilePayParams["MP_ACTION"] = "MP_SCHEDPMT";
295  $mobilePayParams["MP_ACCOUNT"]= $mpAccount;
296  $mobilePayParams["Token"] = $mpToken;
297  $mobilePayParams["TxnId"] = $inputVars["txnid"];
298 
299  $historyArry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
300 
301  if ($historyArry['status']['code'] != '000') {
302  $aryErrors = array();
303  for ( $e = 0; $e < count( $historyArry['status']['errors'] ); $e++ ) {
304  $aryErrors[] = $historyArry['status']['errors'][$e];
305  }
306 
307  throw new Exception (json_encode($aryErrors));
308  }
309  $aryResult = $historyArry;
310  break;
311  case "AddPayment":
312  $mpType = $inputVars['paymentType'];
313 
314  $mobilePayParams = array();
315  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
316  if ($mpType == "Payment"){
317  $mobilePayParams["MP_ACTION"] = "MP_PAYMENT";
318  }
319  else {
320  $mobilePayParams["MP_ACTION"] = "MP_TRANSFER";
321  }
322  $mobilePayParams["MP_ACCOUNT"]= $mpAccount;
323  $mobilePayParams["Token"] = $mpToken;
324  $mobilePayParams["ToId"] = $inputVars["toid"];
325  $mobilePayParams["FromId"] = $inputVars["fromid"];
326  $mobilePayParams["Amount"] = $inputVars["amount"];
327  $mobilePayParams["Date"] = $inputVars["paydate"];
328  $mobilePayParams["Freq"] = $inputVars["freq"];
329  $mobilePayParams["PayNum"] = $inputVars["paynum"];
330  $mobilePayParams["EndDate"] = $inputVars["enddate"];
331  $mobilePayParams["Duration"] = $inputVars["duration"];
332  $historyArry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
333 
334  if ($historyArry['status']['code'] != '000') {
335  $aryErrors = array();
336  for ( $e = 0; $e < count( $historyArry['status']['errors'] ); $e++ ) {
337  $aryErrors[] = $historyArry['status']['errors'][$e];
338  }
339 
340  throw new Exception (json_encode($aryErrors));
341  }
342 
343  $aryResult = $historyArry;
344  break;
345  case "Payees":
346  $mobilePayParams = array();
347  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
348  $mobilePayParams["MP_ACTION"] = "MP_PAYEES";
349  $mobilePayParams["MP_ACCOUNT"]= $mpAccount;
350  $mobilePayParams["Token"] = $mpToken;
351  $payeeArry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
352 
353  if ($payeeArry['status']['code'] != '000') {
354  $aryErrors = array();
355  for ( $e = 0; $e < count( $payeeArry['status']['errors'] ); $e++ ) {
356  $aryErrors[] = $payeeArry['status']['errors'][$e];
357  }
358 
359  throw new Exception (json_encode($aryErrors));
360  }
361  $aryResult = $payeeArry;
362  break;
363  case "GetPayee":
364  $mobilePayParams = array();
365  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
366  $mobilePayParams["MP_ACTION"] = "MP_GETPAYEE";
367  $mobilePayParams["MP_ACCOUNT"]= $mpAccount;
368  $mobilePayParams["Token"] = $mpToken;
369  $mobilePayParams["PayeeId"] = $inputVars["vPayeeId"];
370  $payeeArry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
371 
372  if ($payeeArry['status']['code'] != '000') {
373  $aryErrors = array();
374  for ( $e = 0; $e < count( $payeeArry['status']['errors'] ); $e++ ) {
375  $aryErrors[] = $payeeArry['status']['errors'][$e];
376  }
377 
378  throw new Exception (json_encode($aryErrors));
379  }
380  $aryResult = $payeeArry;
381  break;
382  //Added for adding new payees - ENR
383  case "AddPayee":
384  $mobilePayParams = array();
385  $mobilePayParams["Token"] = $mpToken;
386  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
387  $mobilePayParams["MP_ACTION"] = "MP_ADDPAY";
388  $mobilePayParams["payeeType"] = $inputVars["payeeType"];
389  $mobilePayParams["MP_ACCOUNT"]= $mpAccount;
390  $mobilePayParams["firstName"] = $inputVars["firstName"];
391  $mobilePayParams["lastName"] = $inputVars["lastName"];
392  $mobilePayParams["payeeName"] = $inputVars["payeeName"];
393  $mobilePayParams["accountNum"] = $inputVars["accountNum"];
394  $mobilePayParams["addr1"] = $inputVars["addr1"];
395  $mobilePayParams["addr2"] = $inputVars["addr2"];
396  $mobilePayParams["city"] = $inputVars["city"];
397  $mobilePayParams["state"] = $inputVars["state"];
398  $mobilePayParams["zip"] = $inputVars["zip"];
399  $mobilePayParams["phone"] = $inputVars["phone"];
400  $mobilePayParams["email"] = $inputVars["email"];
401  $mobilePayParams["subName"] = $inputVars["subName"];
402  $mobilePayParams["accountName"] = $inputVars["accountName"];
403  $mobilePayParams["accountId"] = $inputVars["accountId"];
404  $mobilePayParams["nickName"] = $inputVars["nickName"];
405  $mobilePayParams["subId"] = $inputVars["subId"];
406  $mobilePayParams["routingNum"] = $inputVars["routingNum"];
407  $mobilePayParams["accountType"] = $inputVars["accountType"];
408  $mobilePayParams["secret"] = $inputVars["secret"];
409  $mobilePayParams["p2pType"] = $inputVars["p2pType"];
410 
411  $subArry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
412  if ($subArry['status']['code'] !== '000') {
413  $aryErrors = array();
414  for ( $e = 0; $e < count( $subArry['status']['errors'] ); $e++ ) {
415  $aryErrors[] = $subArry['status']['errors'][$e];
416  }
417  throw new Exception (json_encode($aryErrors));
418  }
419  $aryResult = $subArry;
420  break;
421  //Editing payees
422  case "EditPayee":
423  $mobilePayParams = array();
424  $mobilePayParams["Token"] = $mpToken;
425  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
426  $mobilePayParams["MP_ACTION"] = "MP_EDITPAY";
427  $mobilePayParams["delete"] = "false";
428  $mobilePayParams["payeeType"] = $inputVars["payeeType"];
429  $mobilePayParams["MP_ACCOUNT"]= $mpAccount;
430  $mobilePayParams["payeeId"] = $inputVars["payeeId"];
431  $mobilePayParams["firstName"] = $inputVars["firstName"];
432  $mobilePayParams["lastName"] = $inputVars["lastName"];
433  $mobilePayParams["payeeName"] = $inputVars["payeeName"];
434  $mobilePayParams["accountNum"] = $inputVars["accountNum"];
435  $mobilePayParams["addr1"] = $inputVars["addr1"];
436  $mobilePayParams["addr2"] = $inputVars["addr2"];
437  $mobilePayParams["city"] = $inputVars["city"];
438  $mobilePayParams["state"] = $inputVars["state"];
439  $mobilePayParams["zip"] = $inputVars["zip"];
440  $mobilePayParams["phone"] = $inputVars["phone"];
441  $mobilePayParams["email"] = $inputVars["email"];
442  $mobilePayParams["subName"] = $inputVars["subName"];
443  $mobilePayParams["accountName"] = $inputVars["accountName"];
444  $mobilePayParams["accountId"] = $inputVars["accountId"];
445  $mobilePayParams["nickName"] = $inputVars["nickName"];
446  $mobilePayParams["subId"] = $inputVars["subId"];
447  $mobilePayParams["routingNum"] = $inputVars["routingNum"];
448  $mobilePayParams["accountType"] = $inputVars["accountType"];
449  $mobilePayParams["secret"] = $inputVars["secret"];
450  $mobilePayParams["p2pType"] = $inputVars["p2pType"];
451 
452  $subArry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
453  if ($subArry['status']['code'] !== '000') {
454  $aryErrors = array();
455  for ( $e = 0; $e < count( $subArry['status']['errors'] ); $e++ ) {
456  $aryErrors[] = $subArry['status']['errors'][$e];
457  }
458  throw new Exception (json_encode($aryErrors));
459  }
460  $aryResult = $subArry;
461  break;
462  //Delete payees (makes inactive)
463  case "DeletePayee":
464  $mobilePayParams = array();
465  $mobilePayParams["Token"] = $mpToken;
466  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
467  $mobilePayParams["MP_ACTION"] = "MP_DELPAY";
468  $mobilePayParams["MP_ACCOUNT"]= $mpAccount;
469  $mobilePayParams["delete"] = $inputVars["delete"];
470  $mobilePayParams["payeeId"] = $inputVars["payeeId"];
471  $mobilePayParams["subId"] = $inputVars["subId"];
472  $mobilePayParams["payeeType"] = $inputVars["payeeType"];
473  $mobilePayParams["firstName"] = $inputVars["firstName"];
474  $mobilePayParams["lastName"] = $inputVars["lastName"];
475  $mobilePayParams["payeeName"] = $inputVars["payeeName"];
476  $mobilePayParams["accountNum"] = $inputVars["accountNum"];
477  $mobilePayParams["addr1"] = $inputVars["addr1"];
478  $mobilePayParams["addr2"] = $inputVars["addr2"];
479  $mobilePayParams["city"] = $inputVars["city"];
480  $mobilePayParams["state"] = $inputVars["state"];
481  $mobilePayParams["zip"] = $inputVars["zip"];
482  $mobilePayParams["phone"] = $inputVars["phone"];
483  $mobilePayParams["email"] = $inputVars["email"];
484  $mobilePayParams["subName"] = $inputVars["subName"];
485  $mobilePayParams["accountName"] = $inputVars["accountName"];
486  $mobilePayParams["accountId"] = $inputVars["accountId"];
487  $mobilePayParams["nickName"] = $inputVars["nickName"];
488  $mobilePayParams["routingNum"] = $inputVars["routingNum"];
489  $mobilePayParams["accountType"] = $inputVars["accountType"];
490  $mobilePayParams["secret"] = $inputVars["secret"];
491  $mobilePayParams["p2pType"] = $inputVars["p2pType"];
492 
493  $subArry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
494  if ($subArry['status']['code'] !== '000') {
495  $aryErrors = array();
496  for ( $e = 0; $e < count( $subArry['status']['errors'] ); $e++ ) {
497  $aryErrors[] = $subArry['status']['errors'][$e];
498  }
499  throw new Exception (json_encode($aryErrors));
500  }
501  $aryResult = $subArry;
502  break;
503  //Added for enrolling new subscriber - ENR
504  case "NewSub":
505  $mobilePayParams = array();
506  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
507  $mobilePayParams["MP_ACTION"] = "MP_ENROLL";
508 
509  $mobilePayParams["MP_ACCOUNT"]= $mpAccount;
510  $mobilePayParams["firstName"] = $inputVars["firstName"];
511  $mobilePayParams["lastName"] = $inputVars["lastName"];
512  $mobilePayParams["addr1"] = $inputVars["addr1"];
513  $mobilePayParams["addr2"] = $inputVars["addr2"];
514  $mobilePayParams["city"] = $inputVars["city"];
515  $mobilePayParams["state"] = $inputVars["state"];
516  $mobilePayParams["zip"] = $inputVars["zip"];
517  $mobilePayParams["phone"] = $inputVars["phone"];
518  $mobilePayParams["email"] = $inputVars["email"];
519  $mobilePayParams["accountName"] = $inputVars["accountName"];
520  $mobilePayParams["accountId"] = $inputVars["accountId"];
521  $mobilePayParams["ssn"] = $inputVars["ssn"];
522  $mobilePayParams["temppass"] = $inputVars["temppass"];
523  $subArry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
524  if ($subArry['status']['code'] !== '000') {
525  $aryErrors = array();
526  for ( $e = 0; $e < count( $subArry['status']['errors'] ); $e++ ) {
527  $aryErrors[] = $subArry['status']['errors'][$e];
528  }
529  throw new Exception (json_encode($aryErrors));
530  }
531  $aryResult = $subArry;
532  break;
533  //updating subscriber info
534  case "EditSub":
535  $mobilePayParams = array();
536  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
537  $mobilePayParams["MP_ACCOUNT"]= $mpAccount;
538  $mobilePayParams["Token"]= $mpToken;
539 
540  $mobilePayParams["MP_ACTION"] = "MP_EDTSUB";
541  $mobilePayParams["firstName"] = $inputVars["firstName"];
542  $mobilePayParams["lastName"] = $inputVars["lastName"];
543  $mobilePayParams["addr1"] = $inputVars["addr1"];
544  $mobilePayParams["addr2"] = $inputVars["addr2"];
545  $mobilePayParams["city"] = $inputVars["city"];
546  $mobilePayParams["state"] = $inputVars["state"];
547  $mobilePayParams["zip"] = $inputVars["zip"];
548  $mobilePayParams["phone"] = $inputVars["phone"];
549  $mobilePayParams["email"] = $inputVars["email"];
550  $subArry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
551  if ($subArry['status']['code'] !== '000') {
552  $aryErrors = array();
553  for ( $e = 0; $e < count( $subArry['status']['errors'] ); $e++ ) {
554  $aryErrors[] = $subArry['status']['errors'][$e];
555  }
556  throw new Exception (json_encode($aryErrors));
557  }
558  $aryResult = $subArry;
559  break;
560  //pulling subscriber info
561  case "GetSub":
562 
563  $mobilePayParams = array();
564  $mobilePayParams["MP_VENDOR"] = $mpVendorKey;
565  $mobilePayParams["MP_ACCOUNT"]= $mpAccount;
566  $mobilePayParams["Token"]= $mpToken;
567  $mobilePayParams["MP_ACTION"] = "MP_SUBINFO";
568 
569  $subArry = MobilePayPlugin($dbh, $HB_ENV, $mobilePayParams);
570  if ($subArry['status']['code'] !== '000') {
571  $aryErrors = array();
572  for ( $e = 0; $e < count( $subArry['status']['errors'] ); $e++ ) {
573  $aryErrors[] = $subArry['status']['errors'][$e];
574  }
575  throw new Exception (json_encode($aryErrors));
576  }
577  $aryResult = $subArry;
578  break;
579  default:
580  // ** do nothing
581  }
582 
583 }
584 catch(Exception $ex)
585 {
586  //Return error message
587  $aryReply["homecuErrors"] = json_decode( $ex->getMessage() );
588 
589  // if returning error, not replying with data
590  $aryResult = array();
591 
592  // if returning error, not returning status
593  $aryInfo = array();
594 }
595 
596  if ( count( $aryInfo ) ) {
597  $aryReply["homecuInfo"] = $aryInfo;
598  }
599 
600  if ( count( $aryResult ) ) {
601  $aryReply["homecuData"] = $aryResult;
602  //$aryReply = $aryResult;
603  }
604 
605  print json_encode($aryReply);