11 $monLibrary = dirname(__FILE__) .
"/../library";
12 $sharedLibrary = dirname(__FILE__) .
"../../shared/library";
13 require_once(
"$monLibrary/cu_top.i");
14 require_once(
"$monLibrary/ck_hticket.i");
15 require_once(
"$sharedLibrary/commonJsFunctions.i");
17 if (!CheckPerm($link, $Hu, basename($_SERVER[
'SCRIPT_NAME']), $_SERVER[
'REMOTE_ADDR'])) {
18 header(
"Location: /hcuadm/hcu_noperm.prg");
22 $string = array(
"filter" => FILTER_SANITIZE_STRING);
23 $params = array(
"cu" => $string);
24 $vars = array(
"cu" =>
"");
25 HCU_ImportVars($vars,
"", $params);
27 $cu = HCU_array_key_value(
"cu", $vars);
28 $cu = $cu ===
false ?
"" : trim($cu);
32 header(
"Location: /hcuadm/hcu_noperm.prg");
44 function GetMaxRowsList() {
45 return array(
"50",
"100",
"ALL");
53 printMonitorPageTop(
"User List", $homecuKendoVersion, $cloudfrontDomainName, $bootstrapVersion, $fontawesomeVersion,
true);
56 printMonitorPageMiddle(
"User List",
null);
63 <script type=
"text/javascript">
66 getShowWaitFunctions(); ?>
73 function InitSearch() {
74 $.homecuValidator.setup({formValidate:
"searchDiv", formStatusField:
"searchStatusDiv"});
82 var memberNumberMTB = $(
"[name='memberNumber']").kendoMaskedTextBox({
83 mask:
"<?php echo str_repeat('0', 12); ?>" 84 }).data(
"kendoMaskedTextBox");
93 var maxRowsDDL = $(
"#maxRowsDDL").kendoDropDownList({
95 data: <?php echo HCU_JsonEncode(GetMaxRowsList()); ?>
97 }).data(
"kendoDropDownList");
105 $(
".clearBtn").click(
function() {
106 memberNumberMTB.value(
null);
107 $(
"[name='email']").val(
null);
108 $(
"[name='memberNumber']").val(
null);
109 maxRowsDDL.value(
"50");
119 $(
".searchBtn").click(
function() {
120 if ($.homecuValidator.validate()) {
121 $(
"#resultsGrid").data(
"kendoGrid").dataSource.read();
122 $(
"#resultsDiv").show();
123 $(
"#searchDiv").hide();
124 $.homecuValidator.setup({formValidate:
"resultsDiv", formStatusField:
"searchResultsDiv"});
135 function InitResults() {
142 var resultsGrid = $(
"#resultsGrid").kendoGrid({
146 url:
"/hcuadm/mUserList.data",
156 parameterMap:
function(data, type) {
158 var memberNumber = $(
"[name='memberNumber']").data(
"kendoMaskedTextBox").raw().trim();
159 var maxRows = $(
"#maxRowsDDL").data(
"kendoDropDownList").value();
160 var userName = $(
"[name='userName']").val().trim();
161 var email = $(
"[name='email']").val().trim();
163 return {memberNumber: memberNumber, numRows: maxRows, userName: userName, email: email, cu:
"<?php echo $cu; ?>"};
170 login: {type:
"number"},
171 user: {type:
"string"},
172 member: {type:
"string"},
173 email: {type:
"string"},
174 lastLogin: {type:
"string"},
177 hasEstmnt: {type:
"boolean"},
178 sort: {type:
"number"}
187 parse:
function(data) {
190 if (data.error.length > 0)
191 $.homecuValidator.displayMessage(data.error, $.homecuValidator.settings.statusError);
199 {field:
"user", title:
"User Name"},
200 {field:
"member", title:
"Member Number"},
201 {field:
"email", title:
"Email"},
202 {field:
"hasEstmnt", title:
"Estatement", width: 100}, <?php
203 {field:
"lastLogin", title:
"Last Login", sortable: {
210 compare:
function (a, b) {
211 var value = b.sort - a.sort;
212 return value == 0 ? a.lastLogin.localeCompare(b.lastLogin) : value;
216 rowTemplate: $(
"#resultsRowTemplate").html(),
217 autoBind:
false, <?php
222 template:
"<tr><td>No records available</td></tr>" 224 }).data(
"kendoGrid");
232 $(
".backBtn").click(
function() {
233 $(
"[name='memberNumber']").data(
"kendoMaskedTextBox").value(
null);
234 $(
"[name='userName']").val(
null);
235 $(
"[name='email']").val(
null);
236 $(
"[name='memberNumber']").val(
null);
237 $(
"#maxRowsDDL").data(
"kendoDropDownList").value(
"50");
238 $(
"#resultsDiv").hide();
239 $(
"#searchDiv").show();
240 $.homecuValidator.setup({formValidate:
"searchDiv", formStatusField:
"searchStatusDiv"});
249 $(
"#resultsGrid").on(
"click",
"td:has(.loginBtn)",
function() {
250 var tr = $(
this).closest(
"tr");
251 var dataItem = resultsGrid.dataItem(tr);
252 var url =
"/hcuadm/suCuUser.prg?cucode=" +
"<?php echo $cu; ?>" +
"&obMbrLogin=CLS" +
"&adminuser=" + dataItem.user;
253 window.open(url,
"_blank");
262 $(document).ready(
function() {
280 <script type=
"text/x-kendo-template" id=
"resultsRowTemplate">
281 # var estatementString = hasEstmnt ? "checked" : ""; # 282 <tr data-uid=
"#= uid #">
283 <td><a href=
"\\#" class=
"loginBtn"><i
class=
"fa fa-external-link"></i></a></td>
287 <td><input type=
"checkbox" disabled readonly #: estatementString #></td>
288 <td>#: lastLogin #</td>
315 .local-grid-cursor tbody {
319 .local-grid-cursor tbody tr td:eq(0) {
338 <div
class=
"local-max-width">
339 <div
id=
"searchDiv" class=
"container-fluid hcu-template form-horizontal">
340 <div
class=
"form-group"> </div>
341 <div
class=
"well well-sm">
342 <div
id=
"searchStatusDiv"></div>
343 <div
class=
"form-group">
344 <label
class=
"col-xs-12 col-sm-3">Member Number</label>
345 <div
class=
"col-xs-12 col-sm-9"><input name=
"memberNumber" class=
"hcu-all-100"></div>
347 <div
class=
"form-group">
348 <label
class=
"col-xs-12 col-sm-3">
User Name</label>
349 <div
class=
"col-xs-12 col-sm-9"><input type=
"text" class=
"k-input k-textbox hcu-all-100" name=
"userName" maxlength=
"50"></div>
351 <div
class=
"form-group">
352 <label
class=
"col-xs-12 col-sm-3">Email</label>
353 <div
class=
"col-xs-12 col-sm-9"><input name=
"email" type=
"email" class=
"k-input k-textbox hcu-all-100" maxlength=
"255" validationMessage=
"Email is invalid."></div>
355 <div
class=
"form-group">
356 <label
class=
"col-xs-12 col-sm-3">Max Rows</label>
357 <div
class=
"col-xs-12 col-sm-9"><div
id=
"maxRowsDDL" class=
"hcu-all-100"></div></div>
359 <div
class=
"form-group">
360 <div
class=
"col-xs-12">
361 <div
class=
"hcu-edit-buttons">
362 <a
class=
"clearBtn" href=
"#">Clear</a>
364 <a
class=
"searchBtn k-button k-primary" href=
"#"><i
class=
"fa fa-check"></i>Search</a>
379 <div
class=
"local-max-width">
380 <div
id=
"resultsDiv" class=
"container-fluid hcu-template form-horizontal local-max-width" style=
"display:none;"> <?php
381 <div
id=
"searchResultsDiv"></div>
382 <div
class=
"form-group"> </div>
383 <div
class=
"form-group">
384 <div
class=
"col-xs-12">
385 <div
id=
"resultsGrid" class=
"hcu-no-td-border local-grid-cursor"></div>
388 <div
class=
"form-group">
389 <div
class=
"col-xs-12">
390 <div
class=
"hcu-edit-buttons">
391 <a
class=
"backBtn k-button k-primary" href=
"#"><i
class=
"fa fa-check"></i>Search Again</a>
404 printMonitorPageBottom();