13 require_once(dirname(__FILE__) .
'/../library/permissions.i');
17 $serviceShowInfo =
true;
18 $serviceLoadMenu =
true;
19 $serviceShowMenu =
true;
22 require_once(dirname(__FILE__) .
'/../library/hcuService.i');
23 require_once(dirname(__FILE__) .
'/../library/hcuExternalAccts.i');
35 $chome = $HB_ENV[
"chome"];
36 $Flang = $HB_ENV[
"Flang"];
43 HCU_ImportVars($inputVars,
"", $varOk);
46 require_once(dirname(__FILE__) .
'/../includes/hcuPreContent.i');
49 if ($HB_ENV[
'live'] == 0) {
50 header (
"Location: hcuPermNotice.prg?cu=" . HCU_array_key_value(
'Cu', $HB_ENV));
56 PermCheckFeatureScreen($dbh, $HB_ENV, $MC, FEATURE_M2M_TRANSFERS,
'create');
60 $featureEnabled = Check_M2MTransfersEnabled( $dbh, $HB_ENV );
61 if ( $featureEnabled !==
true ) {
63 throw new Exception( HCU_JsonEncode( $MC->msg(
'Option not set', HCU_DISPLAY_AS_HTML) ), 915 );
67 $permissionInputs = array(
"feature" => FEATURE_M2M_TRANSFERS );
68 $accessRights = Perm_AccessRights( $dbh, $HB_ENV, $permissionInputs );
69 if ( !$accessRights[
"create"] ) {
71 throw new Exception( HCU_JsonEncode( $MC->msg(
'Rights not set', HCU_DISPLAY_AS_HTML) ), 915 );
75 $limits = Perm_GetValidationLimits( $dbh, $HB_ENV, $permissionInputs );
77 if ( $limits ===
false || !isset( $limits[
"count_per_day"] ) || !isset( $limits[
"group"][
"count_per_day"] ) ) {
81 $allowedCount = intval( $limits[
"count_per_day"] );
84 $Fset = $HB_ENV[
"Fset"];
92 $noticesAry = Get_NoticeInfo($dbh, $HB_ENV, $MC,
"D",
"m2mAccountNotice",
true);
94 $hasNoticeM2M =
false;
95 $hasNoticePopupM2M =
false;
97 $noticeLinkDisplayM2M =
"";
99 if ( $noticesAry[
"status"][
"code"] ==
"000" && HCU_array_key_exists(
'0', $noticesAry[
'notice'])) {
100 if ($noticesAry[
"notice"][0][
"notice_id"] ) {
101 $hasNoticeM2M =
true;
102 $noticeLinkDisplayM2M = $noticesAry[
"notice"][0][
"notice_linkdisplay"];
104 $noticeOption = $noticesAry[
'notice'][0];
106 $noticeOptions = Array (
107 'docsid' => $noticeOption[
'notice_id'],
108 'docstype' => $noticeOption[
'notice_type'],
111 'expireTime' => mktime() + 86400
114 $encryptedDocDetails= HCU_PayloadEncode($HB_ENV[
'Cu'], $noticeOptions);
116 $noticeOptions[
'noticeOnly'] = 1;
118 $encryptedDocDetailsNoticeOnly= HCU_PayloadEncode($HB_ENV[
'Cu'], $noticeOptions);
122 $noticeURLM2M = $HB_ENV[
'homebankingpath'] .
'/hcuViewNotice.prg?cu=' . $HB_ENV[
'cu'] .
'&x=' . urlencode($encryptedDocDetails);
125 $noticeURLNoticeOnly = $HB_ENV[
'homebankingpath'] .
'/hcuViewNotice.prg?cu=' . $HB_ENV[
'cu'] .
'&x=' . urlencode($encryptedDocDetailsNoticeOnly);
128 $hasNoticePopupM2M = $noticeOption[
"notice_popup"] ? true :
false;
135 $noticesAry = Get_NoticeInfo($dbh, $HB_ENV, $MC,
"D",
"m2mAccountTerms",
true);
137 $hasTermsM2M =
false;
138 $hasTermsPopupM2M =
false;
140 $termsLinkDisplayM2M =
"";
142 if ( $noticesAry[
"status"][
"code"] ==
"000" && HCU_array_key_exists(
'0', $noticesAry[
'notice'])) {
143 if ($noticesAry[
"notice"][0][
"notice_id"] ) {
145 $noticeOption = $noticesAry[
'notice'][0];
147 $noticeOptions = Array (
148 'docsid' => $noticeOption[
'notice_id'],
149 'docstype' => $noticeOption[
'notice_type'],
152 'expireTime' => mktime() + 86400
155 $encryptedDocDetails= HCU_PayloadEncode($HB_ENV[
'Cu'], $noticeOptions);
157 $noticeOptions[
'noticeOnly'] = 1;
159 $encryptedDocDetailsNoticeOnly= HCU_PayloadEncode($HB_ENV[
'Cu'], $noticeOptions);
163 $termsURLM2M = $HB_ENV[
'homebankingpath'] .
'/hcuViewNotice.prg?cu=' . $HB_ENV[
'cu'] .
'&x=' . urlencode($encryptedDocDetails);
166 $termsURLNoticeOnly = $HB_ENV[
'homebankingpath'] .
'/hcuViewNotice.prg?cu=' . $HB_ENV[
'cu'] .
'&x=' . urlencode($encryptedDocDetailsNoticeOnly);
169 $hasTermsPopupM2M = $noticeOption[
"notice_popup"] ? true :
false;
171 $termsButtonText = $noticeOption[
"notice_linkdisplay"];
180 $accountTypes = array( array(
"type" => ACCOUNT_TYPE_CHECKING,
"display" => $MC->msg(
"ACH Checking", HCU_DISPLAY_AS_HTML) ),
181 array(
"type" => ACCOUNT_TYPE_SAVINGS,
"display" => $MC->msg(
"ACH Savings", HCU_DISPLAY_AS_HTML) )
185 <div
class=
"col-xs-12" style=
'font-size:12px;'>
186 <div
id=
"hcuAchTables" class=
"k-content" style=
"max-width:700px;"></div>
187 <!--
set up the array with status names (these are the same
for M2M accounts) -->
188 <?php $statuses = Get_ExternalTransferStatusLookup( $MC ); ?>
194 var achAccountTypes = <?php echo HCU_JsonEncode( $accountTypes ); ?>;
195 var statusLookup = <?php echo HCU_JsonEncode( $statuses ) ?>;
198 var addAccountDialog;
199 var window_stack = [];
205 var terms = <?php echo HCU_JsonEncode($hasTermsM2M && $hasTermsPopupM2M); ?>;
206 var notice = <?php echo HCU_JsonEncode($hasNoticeM2M && $hasNoticePopupM2M); ?>;
209 function ShowStatus( statusMessage ) {
210 $.homecuValidator.settings.formStatusField =
"formStatus";
211 $.homecuValidator.settings.formInfoTitle =
"";
212 $.homecuValidator.displayMessage(statusMessage);
215 function GetM2MAccounts( ) {
216 var request = { action:
"get_m2m_accounts" };
218 dsHelper.read( request );
222 function LaunchValidationDialog(
id ) {
224 for ( var i = 0; i < gridList.length; i++ ) {
225 if ( gridList[i].
id ==
id ) {
226 ShowValidationInput( gridList[i] );
233 function LaunchUpdateDialog(
id ) {
235 for ( var i = 0; i < gridList.length; i++ ) {
236 if ( gridList[i].
id ==
id ) {
237 ShowExtAcctDetail( gridList[i] );
244 function ShowExtAcctDetail( detailInfo ) {
246 updateAccountModel.ResetModel();
247 updateAccountModel.set(
"extAcctId", detailInfo.id );
248 updateAccountModel.set(
"extName", detailInfo.displayName );
249 updateAccountModel.set(
"extNameOnAccount", detailInfo.nameOnAccount );
251 var content =
"<div id='extAcctUpdate' class='form-horizontal'>" +
252 "<div id='editFormStatus' class='homecu-formStatus k-block k-error-colored' style='display:none; margin-bottom:10px;max-width:800px;'></div>" +
253 "<div class='form-group'>" +
254 "<label class='col-xs-12 col-sm-5' for='extNameUpdate'><?php echo $MC->msg("EXT Display Name
", HCU_DISPLAY_AS_JS) ?></label>" +
255 "<div class='col-xs-12 col-sm-7'>" +
256 "<input id='extNameUpdate' \ 257 name='extNameUpdate' \ 259 data-bind='value: extName, events:{change: setDirty}' \ 260 placeholder='<?php echo $MC->msg("ACH Required
", HCU_DISPLAY_AS_JS) ?>' \ 262 class='k-textbox k-autocomplete hcu-all-100' \ 264 validationMessage = '<?php echo $MC->msg("EXT Display Name required
", HCU_DISPLAY_AS_JS) ?>' \ 265 autocomplete='off' />" +
268 "<div class='form-group'>" +
269 "<label class='col-xs-12 col-sm-5'><?php echo $MC->msg("Status
", HCU_DISPLAY_AS_JS) ?></label>" +
270 "<div class='col-xs-12 col-sm-7'>" + detailInfo.statusName +
"</div>" +
272 "<div class='form-group'>" +
273 "<label class='col-xs-12 col-sm-5'><?php echo $MC->msg("Account
", HCU_DISPLAY_AS_JS) ?></label>" +
274 "<div class='col-xs-12 col-sm-7'>" + detailInfo.account +
"</div>" +
276 "<div class='form-group'>" +
277 "<label class='col-xs-12 col-sm-5'><?php echo $MC->msg("Type
", HCU_DISPLAY_AS_JS) ?></label>" +
278 "<div class='col-xs-12 col-sm-7'>" + detailInfo.type +
"</div>" +
282 detailDialog.content(content).open().center();
287 function HandleGetAccounts( accountInfo ) {
288 var hasPending =
false;
291 for ( var i = 0; i < accountInfo.length; i++ ) {
292 var remoteInfo = JSON.parse( accountInfo[i].remote_info );
293 var remoteAccount = accountInfo[i][
"remoteAccount"];
296 var verificationStart =
"";
297 var linkStr =
"<a title='<?php echo $MC->msg("EXT Edit Account Info
", HCU_DISPLAY_AS_JS) ?>' href='javascript:LaunchUpdateDialog(" + accountInfo[i].id +
")'><div class='fa fa-pencil text-primary'></div></a>";
298 linkStr +=
"<span class='hcu-icon-spacer'></span>";
299 if ( accountInfo[i].status ==
'a' ) {
300 linkStr +=
"<div class='fa fa-check text-success'></div>";
301 }
else if ( accountInfo[i].status ==
'i' ) {
302 linkStr +=
"<div class='fa fa-ban text-danger'></div>";
303 }
else if ( accountInfo[i].status ==
'l' ) {
305 linkStr +=
"<div class='fa fa-lock text-danger'></div>";
307 linkStr +=
"<div class='fa fa-question text-danger'></div>";
311 id: accountInfo[i].id,
312 userId: accountInfo[i].user_id,
313 displayName: accountInfo[i].display_name,
314 nameOnAccount: accountInfo[i].name_on_account,
315 status: accountInfo[i].status,
316 statusName: statusLookup[accountInfo[i].status],
318 account: remoteAccount,
319 type: (remoteInfo.rdfi.type == 20 ?
320 "<?php echo $MC->msg("ACH Savings
", HCU_DISPLAY_AS_JS) ?>" :
321 "<?php echo $MC->msg("ACH Checking
", HCU_DISPLAY_AS_JS) ?>"),
323 pendingDate: verificationStart
326 gridList.push( newObject );
329 if ( accountInfo[i].status ==
'p' ) {
334 $(
"#extValidationMsg").show();
336 $(
"#extValidationMsg").hide();
341 extAcctGrid.dataSource.data(gridList);
345 function HandleUpdateAccount( updateInfo ) {
346 var idUpdated = updateInfo[
"id"];
349 for ( var i = 0; i < gridList.length; i++ ) {
350 if ( gridList[i].
id == idUpdated ) {
351 gridList[i].displayName = updateInfo[
"display_name"];
352 gridList[i].nameOnAccount = updateInfo[
"name_on_account"];
358 extAcctGrid.dataSource.data(gridList);
362 function HandleDeleteAccount( idToDelete ) {
364 for ( var i = 0; i < gridList.length; i++ ) {
365 if ( gridList[i].
id == idToDelete ) {
366 gridList.splice(i, 1);
372 extAcctGrid.dataSource.data(gridList);
376 function InitDataSources() {
377 dsHelper =
new kendo.data.DataSource({
382 url:
'hcuExternalAccts.data?cu=<?php echo $HB_ENV['cu
']; ?>',
384 contentType:
"application/x-www-form-urlencoded",
390 parse:
function(response) {
396 requestStart:
function( e ) {
399 requestEnd:
function( e ) {
405 if ( e.response && e.response.Results ) {
406 results = e.response.Results;
409 if ( results && results.homecuErrors )
410 error = results.homecuErrors;
412 if ( error && error.length > 0 ) {
415 dsHelper.cancelChanges();
417 $.homecuValidator.displayMessage(error, $.homecuValidator.settings.statusError);
420 if ( results && results.homecuInfo && (results.homecuInfo.length > 0) ) {
421 ShowStatus( results.homecuInfo );
425 if ( results && results.homecuData ) {
426 if ( results.homecuData.get_m2m_accounts ) {
427 HandleGetAccounts( results.homecuData.get_m2m_accounts);
428 }
else if ( results.homecuData.add_m2m_account ) {
430 addAccountDialog.close();
433 $.homecuValidator.settings.formStatusField =
"formStatus";
436 HandleGetAccounts( results.homecuData.add_m2m_account );
437 }
else if ( results.homecuData.update_account ) {
439 detailDialog.close();
442 $.homecuValidator.settings.formStatusField =
"formStatus";
445 HandleUpdateAccount( results.homecuData.update_account );
446 }
else if ( results.homecuData.delete_account ) {
448 detailDialog.close();
451 $.homecuValidator.settings.formStatusField =
"formStatus";
454 HandleDeleteAccount( results.homecuData.delete_account );
460 error =
"<?php echo $MC->msg("Transport error
", HCU_DISPLAY_AS_JS) ?>";
461 $.homecuValidator.displayMessage(error, $.homecuValidator.settings.statusError);
467 error:
function( e ) {
472 function InitDataViews() {
473 addAccountModel = kendo.observable({
475 extNameOnAccount:
"",
478 extDFISelectedType:
"",
480 ResetModel:
function () {
481 this.
set(
"extName",
"" );
482 this.
set(
"extNameOnAccount",
"" );
483 this.
set(
"extDFIAccount",
"" );
484 this.
set(
"extDFIConfirm",
"" );
485 this.
set(
"extDFISelectedType",
"" );
486 this.
set(
"dirtyFlag", false );
488 setDirty:
function(e) {
489 this.
set(
"dirtyFlag", true );
491 SendToServer:
function () {
492 var action =
"add_m2m_account";
495 display_name: this.extName,
496 name_on_account: this.extNameOnAccount,
497 dfi_account: this.extDFIAccount,
498 dfi_account_type: this.extDFISelectedType
501 dsHelper.read( request );
505 updateAccountModel = kendo.observable({
508 extNameOnAccount:
"",
512 ResetModel:
function () {
513 this.
set(
"extAcctId", 0 );
514 this.
set(
"extName",
"" );
515 this.
set(
"extNameOnAccount",
"" );
516 this.
set(
"dirtyFlag", false );
518 setDirty:
function(e) {
519 this.
set(
"dirtyFlag", true );
521 SendToServer:
function () {
522 var action =
"update_account";
526 display_name: this.extName,
527 name_on_account: this.extNameOnAccount
530 dsHelper.read( request );
535 $.homecuValidator.setup({formErrorTitle:
"<?php echo $MC->msg("Error Occurred
", HCU_DISPLAY_AS_JS) ?>"});
537 extAcctGrid = $(
'#extAcctGrid').kendoGrid({
538 dataSource: gridList,
542 toolbar: kendo.template($(
"#gridToolbar").html()),
543 noRecords: {
template:
"<span class='hcu-secondary-text'><?php echo $MC->msg("EXT No Accounts
", HCU_DISPLAY_AS_JS) ?></span>"},
547 template:
"#= data.linksStr #",
549 { field:
"displayName",
550 title:
"<?php echo $MC->msg("Name
", HCU_DISPLAY_AS_JS) ?>" },
551 { field:
"statusName",
552 title:
"<?php echo $MC->msg("Status
", HCU_DISPLAY_AS_JS) ?>",
554 minScreenWidth: 567 },
556 title:
"<?php echo $MC->msg("ACH Account Info
", HCU_DISPLAY_AS_JS) ?>",
557 minScreenWidth: 374 }
559 change:
function(e) {
561 $.homecuValidator.displayMessage(
"" );
563 var selectedCell = this.select();
564 var selectedRow = selectedCell.closest(
"tr");
565 var cellIndex = selectedCell.index();
568 var currSelectedItem = extAcctGrid.dataItem(selectedRow);
570 if ( cellIndex >= 1 ) {
571 ShowExtAcctDetail( currSelectedItem );
574 selectedCell.removeClass(
"k-state-selected" );
576 }).data(
'kendoGrid');
578 var maxHeight = parseInt($(window).height() * .9, 10);
579 var widthDialog = parseInt($(window).width() * .8, 10);
580 var addAccountTemplate = $(
"#addAccountTemplate").html();
581 addAccountDialog = $(addAccountTemplate).kendoDialog({
583 maxHeight: maxHeight,
586 title:
"<?php echo $MC->msg("ACH Account Info
", HCU_DISPLAY_AS_JS) ?>",
589 window_stack.push(
function(e) {
590 if ( addAccountModel.dirtyFlag ) {
591 discardDialog.open();
593 addAccountDialog.close(e);
598 addAccountModel.ResetModel();
601 $(
'#addAccountDialog').css(
'overflow',
'');
604 $(
"#achAccountType").kendoDropDownList({
605 dataTextField:
"display",
606 dataValueField:
"type",
607 dataSource: achAccountTypes,
608 optionLabel: {type:
"", display:
"<?php echo $MC->msg("ACH Select Type
", HCU_DISPLAY_AS_JS) ?>"},
612 kendo.bind($(
"#addAccountDialog"), addAccountModel);
615 $.homecuValidator.setup({formValidate:
"addAccountDialog", formStatusField:
'addFormStatus'});
622 { text:
"<?php echo $MC->msg('Cancel', HCU_DISPLAY_AS_JS); ?>",
624 if ( addAccountModel.dirtyFlag ) {
625 discardDialog.open();
633 text:
"<?php echo $MC->msg('Save', HCU_DISPLAY_AS_JS); ?>",
635 $.homecuValidator.setup( {formValidate:
"addAccountDialog", formStatusField:
'addFormStatus'} );
636 if ( $.homecuValidator.validate() ) {
638 var otherErrors = Array();
639 if ( addAccountModel.extDFIAccount.length < 1 ) {
641 otherErrors.push( $(
"#singleRecipientAccount").attr(
"validationMessage" ) );
643 if ( addAccountModel.extDFIAccount !== addAccountModel.extDFIConfirm ) {
645 otherErrors.push( $(
"#singleRecipientConfirm").attr(
"data-homecuCustomEquals-msg" ) );
647 if ( addAccountModel.extDFISelectedType ===
"" ) {
649 otherErrors.push( $(
"#achAccountType").attr(
"validationMessage" ) );
652 if (otherErrors.length > 0) {
653 $.homecuValidator.displayMessage(otherErrors, $.homecuValidator.settings.statusError);
656 $.homecuValidator.settings.formStatusField =
"addFormStatus";
658 if ( addAccountModel.dirtyFlag ) {
660 addAccountModel.SendToServer();
674 }).data(
"kendoDialog");
676 var maxHeight = parseInt($(window).height() * .9, 10);
677 detailDialog = $(
"#detailDialog").kendoDialog({
679 title:
"<?php echo $MC->msg("ACH Account Info
", HCU_DISPLAY_AS_JS) ?>",
680 content:
"<span class='hcu-secondary-text'><?php echo $MC->msg("Loading Data
", HCU_DISPLAY_AS_JS) ?></span>",
681 maxHeight: maxHeight,
687 window_stack.push(
function(e) {
688 if ( updateAccountModel.dirtyFlag ) {
689 discardDialog.open();
691 detailDialog.close(e);
696 $.homecuValidator.setup( {formStatusField:
"editFormStatus", formValidate:
"extAcctUpdate"} );
699 kendo.bind($(
"#extAcctUpdate"), updateAccountModel);
702 $(
"#extNameUpdate").blur();
710 text:
"<?php echo $MC->msg("Delete
", HCU_DISPLAY_AS_JS) ?>",
711 action:
function(e) {
717 text:
"<?php echo $MC->msg("Cancel
", HCU_DISPLAY_AS_JS) ?>",
719 if ( updateAccountModel.dirtyFlag ) {
720 discardDialog.open();
726 text:
"<?php echo $MC->msg("Save
", HCU_DISPLAY_AS_JS) ?>",
729 if ( $.homecuValidator.validate() ) {
730 if ( updateAccountModel.dirtyFlag ) {
732 updateAccountModel.SendToServer();
743 }).data(
"kendoDialog");
745 deleteDialog = $(
"#deleteDialog").kendoDialog({
747 title:
"<?php echo $MC->msg("Delete
", HCU_DISPLAY_AS_JS) ?>",
748 content:
"<p><?php echo $MC->msg("EXT Continue
delete", HCU_DISPLAY_AS_JS) ?></p><p><?php echo $MC->msg("ACH Continue
", HCU_DISPLAY_AS_JS) ?></p>",
751 window_stack.push(
function(e) {
752 deleteDialog.close(e);
759 actions: [{text:
"<?php echo $MC->msg("No
", HCU_DISPLAY_AS_JS) ?>"},
761 text:
"<?php echo $MC->msg("Yes
", HCU_DISPLAY_AS_JS) ?>",
763 var request = { action:
"delete_account",
764 id: updateAccountModel.extAcctId };
766 dsHelper.read( request );
773 }).data(
"kendoDialog");
777 discardDialog = $(
"#discardDialog").kendoDialog({
779 title:
"<?php echo $MC->msg("ACH Discard Changes?
", HCU_DISPLAY_AS_JS) ?>",
780 content:
"<p><?php echo $MC->msg("ACH Discard changes warning
", HCU_DISPLAY_AS_JS) ?></p><p><?php echo $MC->msg("ACH Continue
", HCU_DISPLAY_AS_JS) ?></p>",
783 window_stack.push(
function(e) {
784 discardDialog.close(e);
792 text:
"<?php echo $MC->msg("No
", HCU_DISPLAY_AS_JS) ?>",
793 action:
function(e) {
797 text:
"<?php echo $MC->msg("Yes
", HCU_DISPLAY_AS_JS) ?>",
799 action:
function(e) {
801 addAccountModel.ResetModel();
802 updateAccountModel.ResetModel();
808 var fn = window_stack[window_stack.length - 1];
812 }).data(
"kendoDialog");
815 function InitScreen() {
820 $(
"#ach-payment").show();
823 $(document).ready(
function() {
825 ShowNotice(
'<?php echo $termsURLM2M; ?>',
"<?php echo $termsLinkDisplayM2M ?>",
829 ShowNotice(
'<?php echo $noticeURLM2M; ?>',
"<?php echo $noticeLinkDisplayM2M ?>");
836 var urlInit = window.location.href.substring(0, window.location.href.indexOf(
"hcu"));
837 var urlCu =
"<?php echo $Cu ?>";
838 var urlPage =
"hcuAccounts.prg";
839 var urlRedirect = urlInit + urlPage +
"?cu=" + urlCu;
841 window.location.replace(urlRedirect);
846 ShowNotice(
'<?php echo $noticeURLM2M; ?>',
"<?php echo $noticeLinkDisplayM2M ?>");
853 $(document).on(
"click",
".k-overlay",
function (e) {
854 if(window_stack.length > 0) {
856 var fn = window_stack[window_stack.length - 1];
862 <script
id=
"gridToolbar" type=
"text/x-kendo-template">
863 <a
class=
"k-button" href=
"\#" onclick=
"return addAccountDialog.open()"><span
class=
"fa fa-plus"></span> <?php echo $MC->msg(
"EXT Add Account", HCU_DISPLAY_AS_JS) ?></a>
865 <script
id=
"addAccountTemplate" type=
"text/x-kendo-template">
866 <div
id=
"addAccountDialog" class=
"container-fluid hcu-scrolling-dialog">
867 <div
id=
"addFormStatus" class=
"homecu-formStatus k-block k-error-colored" style=
"display:none; margin-bottom:10px;max-width:800px;"></div>
868 <div
class=
"form-horizontal">
869 <div
class=
"form-group">
870 <div
class=
"col-xs-12 hcu-secondary-text"> <?php echo $MC->msg(
"EXT All Required", HCU_DISPLAY_AS_HTML); ?></div>
872 <div
class=
"form-group">
873 <label
for=
"singleDisplayName" class=
"col-xs-12 col-sm-4 control-label"><?php echo $MC->msg(
"ACH Display Name", HCU_DISPLAY_AS_HTML) ?></label>
874 <div
class=
"col-xs-12 col-sm-6">
876 id=
"singleDisplayName" 877 name=singleDisplayName
" 878 class="k-textbox hcu-all-100
" 880 data-bind="value: extName, events:{change: setDirty}
" 881 validationMessage="<?php echo $MC->msg(
"ACH Unique display name required", HCU_DISPLAY_AS_HTML) ?>
" 885 <div class="form-group
"> 886 <div class="col-xs-12 h4
"> <?php echo $MC->msg("ACH Remote Account
", HCU_DISPLAY_AS_HTML); ?></div> 888 <div class="form-group
"> 889 <label for="extNameOnAccount
" class="col-xs-12 col-sm-4 control-label
"><?php echo $MC->msg("M2M Last Name
", HCU_DISPLAY_AS_HTML); ?><span class="required-field
"></label> 890 <div class="col-xs-12 col-sm-6
"><input id="extNameOnAccount
" 891 name="extNameOnAccount
" 892 class="k-textbox hcu-all-100
" 894 data-bind="value: extNameOnAccount, events:{change: setDirty}
" 895 validationMessage="<?php echo $MC->msg(
"M2M Last Name Required", HCU_DISPLAY_AS_HTML); ?>
" 898 <div class="form-group
"> 899 <label for="singleRecipientAccount
" class="col-xs-12 col-sm-4 control-label
"><?php echo $MC->msg("ACH Account
", HCU_DISPLAY_AS_HTML) ?></label> 900 <div class="col-xs-12 col-sm-6
"><input type="text
" 901 name="singleRecipientAccount
" 902 id="singleRecipientAccount
" 903 class="k-textbox hcu-all-100 account-match
" 905 data-bind="value: extDFIAccount, events:{change: setDirty}
" 906 validationMessage="<?php echo $MC->msg(
'Account Number Missing', HCU_DISPLAY_AS_HTML); ?>
" 909 <div class="form-group
"> 910 <label for="singleRecipientAccountConfirm
" class="col-xs-12 col-sm-4 control-label
"><?php echo $MC->msg('ACH Confirm Account', HCU_DISPLAY_AS_HTML); ?></label> 911 <div class="col-xs-12 col-sm-6
"><input type="text
" 912 id="singleRecipientConfirm
" 913 name="singleRecipientConfirm
" 914 class="k-textbox hcu-all-100 account-match
" 916 homecu-equals="account-match
" 917 data-homecuCustomEquals-msg="<?php echo $MC->msg(
'ACH Accounts no match', HCU_DISPLAY_AS_HTML); ?>
" 918 data-bind="value: extDFIConfirm, events:{change: setDirty}
" 919 validationMessage="<?php echo $MC->msg(
'Account Number Missing', HCU_DISPLAY_AS_HTML); ?>
" 922 <div class="form-group
"> 923 <label for="achAccountType
" class="col-xs-12 col-sm-4 control-label
"><?php echo $MC->msg('Account Type', HCU_DISPLAY_AS_HTML); ?></label> 924 <div class="col-xs-12 col-sm-5
"><input id="achAccountType
" 925 name="achAccountType
" 927 data-bind="value: extDFISelectedType, events:{change: setDirty}
" 928 validationMessage="<?php echo $MC->msg(
'Account Type Missing', HCU_DISPLAY_AS_HTML) ?>
" 933 <div id="disclosureWindow
" name="disclosureWindow
"></div> 934 <div id="discardDialog
"></div> 935 <style type="text/css
"> 936 .hcu-scrolling-dialog { 942 .account-rows .k-grid-content tr td { 943 border-left-width: 0; 945 .k-grid .k-grid-content tr:hover { 948 .leading-zero-fontsize { 951 .local-align-leading-zero { 959 /* Small devices @screen-sm-min (tablets, 768px and up) */ 960 @media (min-width: 768px) { 963 /* Medium devices @screen-md-min (desktops, 992px and up) */ 964 @media (min-width: 992px) { 967 <div id="detailDialog
"></div> 968 <div id="deleteDialog
"></div> 969 <div class="k-content col-xs-12
" id="ach-payment
" style="max-width:700px; display: none;
"> 970 <div class="form-horizontal
"> 971 <div class="well well-sm
"> 972 <div class="form-group
"> 973 <div class="col-xs-12 h4
"><?php echo $MC->msg('M2M Accounts', HCU_DISPLAY_AS_HTML) ?></div> 975 <div class="form-group
"> 976 <div class="col-xs-12
"><div class="account-rows
" id="extAcctGrid
"></div></div> 983 } catch (Exception $ex) { 984 // * Include the Error page and then end the content 985 // NOTE: this is for when the page is first loading 986 $serviceErrorMsg = HCU_JsonDecode($ex->getMessage()); 988 $serviceErrorCode = $ex->getCode(); // this chooses which error page to show 990 require_once(dirname(__FILE__) . '/../includes/hcuErrorPage.i'); 997 // ** INCLUDE POST CONTENT SCRIPT 998 require_once(dirname(__FILE__) . '/../includes/hcuPostContent.i');