Updating devicemgt_admin into /api/device-mgt/v1.0.

merge-requests/1/head
Rasika Perera 8 years ago
parent 9cef6f0d8c
commit 52dfcecb62

@ -18,7 +18,7 @@
$(document).ready(function () { $(document).ready(function () {
invokerUtil.get( invokerUtil.get(
"/devicemgt_admin/configuration", "/api/device-mgt/android_sense/v1.0/configuration",
function (data) { function (data) {
data = JSON.parse(data); data = JSON.parse(data);
if (data && data.configuration) { if (data && data.configuration) {
@ -52,7 +52,7 @@ var addConfiguration = function () {
var errorMsgWrapper = "#android_sense-config-error-msg"; var errorMsgWrapper = "#android_sense-config-error-msg";
var errorMsg = "#android_sense-config-error-msg span"; var errorMsg = "#android_sense-config-error-msg span";
var addConfigFormData = {}; var addConfigFormData = {};
var configList = new Array(); var configList = [];
var mqttEp = $("input#mqtt-endpoint").val(); var mqttEp = $("input#mqtt-endpoint").val();
var mqttConfig = { var mqttConfig = {
"name": "ANDROID_SENSE_MQTT_EP", "name": "ANDROID_SENSE_MQTT_EP",
@ -61,10 +61,10 @@ var addConfiguration = function () {
}; };
configList.push(mqttConfig); configList.push(mqttConfig);
addConfigFormData.type = "android_sense" addConfigFormData.type = "android_sense";
addConfigFormData.configuration = configList; addConfigFormData.configuration = configList;
var addConfigAPI = "/devicemgt_admin/configuration"; var addConfigAPI = "/api/device-mgt/android_sense/v1.0/configuration";
invokerUtil.post( invokerUtil.post(
addConfigAPI, addConfigAPI,
addConfigFormData, addConfigFormData,

@ -18,7 +18,7 @@
$(document).ready(function () { $(document).ready(function () {
invokerUtil.get( invokerUtil.get(
"/devicemgt_admin/configuration", "/api/device-mgt/arduino/v1.0/configuration",
function (data) { function (data) {
data = JSON.parse(data); data = JSON.parse(data);
if (data && data.configuration) { if (data && data.configuration) {
@ -69,10 +69,10 @@ var addConfiguration = function () {
configList.push(httpConfig); configList.push(httpConfig);
configList.push(httpsConfig); configList.push(httpsConfig);
addConfigFormData.type = "arduino" addConfigFormData.type = "arduino";
addConfigFormData.configuration = configList; addConfigFormData.configuration = configList;
var addConfigAPI = "/devicemgt_admin/configuration"; var addConfigAPI = "/api/device-mgt/arduino/v1.0/configuration";
invokerUtil.post( invokerUtil.post(
addConfigAPI, addConfigAPI,
addConfigFormData, addConfigFormData,

@ -248,7 +248,7 @@ var updatePolicy = function (policy, state) {
payload["roles"] = []; payload["roles"] = [];
} }
var serviceURL = "/devicemgt_admin/policies/" + getParameterByName("id"); var serviceURL = "/api/device-mgt/v1.0/policies/" + getParameterByName("id");
invokerUtil.put( invokerUtil.put(
serviceURL, serviceURL,
payload, payload,
@ -257,7 +257,7 @@ var updatePolicy = function (policy, state) {
if (state == "save"){ if (state == "save"){
var policyList = []; var policyList = [];
policyList.push(getParameterByName("id")); policyList.push(getParameterByName("id"));
serviceURL = "/devicemgt_admin/policies/inactivate"; serviceURL = "/api/device-mgt/v1.0/policies/inactivate";
invokerUtil.put( invokerUtil.put(
serviceURL, serviceURL,
policyList, policyList,
@ -274,7 +274,7 @@ var updatePolicy = function (policy, state) {
}else if(state == "publish"){ }else if(state == "publish"){
var policyList = []; var policyList = [];
policyList.push(getParameterByName("id")); policyList.push(getParameterByName("id"));
serviceURL = "/devicemgt_admin/policies/activate"; serviceURL = "/api/device-mgt/v1.0/policies/activate";
invokerUtil.put( invokerUtil.put(
serviceURL, serviceURL,
policyList, policyList,
@ -451,7 +451,7 @@ $(document).ready(function () {
data: function (params) { data: function (params) {
var postData = {}; var postData = {};
postData.actionMethod = "GET"; postData.actionMethod = "GET";
postData.actionUrl = "/devicemgt_admin/users?q=ad"; postData.actionUrl = "/api/device-mgt/v1.0/users?q=ad";
postData.actionPayload = JSON.stringify({ postData.actionPayload = JSON.stringify({
q: params.term, // search term q: params.term, // search term
page: params.page page: params.page
@ -479,7 +479,7 @@ $(document).ready(function () {
var policyPayloadObj; var policyPayloadObj;
invokerUtil.get( invokerUtil.get(
"/devicemgt_admin/policies/" + getParameterByName("id"), "/api/device-mgt/v1.0/policies/" + getParameterByName("id"),
// on success // on success
function (data) { function (data) {
data = JSON.parse(data); data = JSON.parse(data);

@ -111,7 +111,7 @@ $(document).ready(function () {
var policyPayloadObj; var policyPayloadObj;
invokerUtil.get( invokerUtil.get(
"/devicemgt_admin/policies/" + getParameterByName("id"), "/api/device-mgt/v1.0/policies/" + getParameterByName("id"),
// on success // on success
function (data) { function (data) {
// console.log("success: " + JSON.stringify(data)); // console.log("success: " + JSON.stringify(data));

@ -241,9 +241,9 @@ var savePolicy = function (policy, state) {
var serviceURL; var serviceURL;
if (state == "save") { if (state == "save") {
serviceURL = "/devicemgt_admin/policies/inactive-policy" serviceURL = "/api/device-mgt/v1.0/policies/inactive-policy"
} else if (state == "publish") { } else if (state == "publish") {
serviceURL = "/devicemgt_admin/policies/active-policy" serviceURL = "/api/device-mgt/v1.0/policies/active-policy"
} }
invokerUtil.post( invokerUtil.post(
serviceURL, serviceURL,
@ -414,7 +414,7 @@ $(document).ready(function () {
data: function (params) { data: function (params) {
var postData = {}; var postData = {};
postData.actionMethod = "GET"; postData.actionMethod = "GET";
postData.actionUrl = "/devicemgt_admin/users"; postData.actionUrl = "/api/device-mgt/v1.0/users";
postData.actionPayload = JSON.stringify({ postData.actionPayload = JSON.stringify({
q: params.term, // search term q: params.term, // search term
page: params.page page: params.page
@ -442,7 +442,7 @@ $(document).ready(function () {
templateSelection: formatRepoSelection // omitted for brevity, see the source of this page templateSelection: formatRepoSelection // omitted for brevity, see the source of this page
}); });
$("#groups-input").select2({ $("#groups-input").select2({
multiple: true, multiple: true,
tags: true, tags: true,
ajax: { ajax: {
@ -457,7 +457,7 @@ $(document).ready(function () {
var postData = {}; var postData = {};
postData.actionMethod = "GET"; postData.actionMethod = "GET";
var username = $("#platform").data("username"); var username = $("#platform").data("username");
postData.actionUrl = "/devicemgt_admin/groups/user/" + username + postData.actionUrl = "/api/device-mgt/v1.0/groups/user/" + username +
"/search?groupName=" + params.term; "/search?groupName=" + params.term;
return JSON.stringify(postData); return JSON.stringify(postData);
}, },

@ -18,7 +18,7 @@
$(document).ready(function () { $(document).ready(function () {
invokerUtil.get( invokerUtil.get(
"/devicemgt_admin/configuration", "/api/device-mgt/raspberrypi/v1.0/configuration",
function (data) { function (data) {
data = JSON.parse(data); data = JSON.parse(data);
if (data && data.configuration) { if (data && data.configuration) {
@ -79,10 +79,10 @@ var addConfiguration = function () {
configList.push(httpConfig); configList.push(httpConfig);
configList.push(httpsConfig); configList.push(httpsConfig);
configList.push(mqttConfig); configList.push(mqttConfig);
addConfigFormData.type = "raspberrypi" addConfigFormData.type = "raspberrypi";
addConfigFormData.configuration = configList; addConfigFormData.configuration = configList;
var addConfigAPI = "/devicemgt_admin/configuration"; var addConfigAPI = "/api/device-mgt/raspberrypi/v1.0/configuration";
invokerUtil.post( invokerUtil.post(
addConfigAPI, addConfigAPI,
addConfigFormData, addConfigFormData,

@ -18,7 +18,7 @@
$(document).ready(function () { $(document).ready(function () {
invokerUtil.get( invokerUtil.get(
"/devicemgt_admin/configuration", "/api/device-mgt/virtual_firealarm/v1.0/configuration",
function (data) { function (data) {
data = JSON.parse(data); data = JSON.parse(data);
if (data && data.configuration) { if (data && data.configuration) {
@ -69,10 +69,10 @@ var addConfiguration = function () {
configList.push(httpConfig); configList.push(httpConfig);
configList.push(httpsConfig); configList.push(httpsConfig);
configList.push(mqttConfig); configList.push(mqttConfig);
addConfigFormData.type = "virtual_firealarm" addConfigFormData.type = "virtual_firealarm";
addConfigFormData.configuration = configList; addConfigFormData.configuration = configList;
var addConfigAPI = "/devicemgt_admin/configuration"; var addConfigAPI = "/api/device-mgt/virtual_firealarm/v1.0/configuration";
invokerUtil.post( invokerUtil.post(
addConfigAPI, addConfigAPI,
addConfigFormData, addConfigFormData,

@ -21,57 +21,265 @@
var deviceIdentifier = deviceId.data("deviceid"); var deviceIdentifier = deviceId.data("deviceid");
var deviceType = deviceId.data("type"); var deviceType = deviceId.data("type");
var payload = [deviceIdentifier]; var payload = [deviceIdentifier];
var serviceUrl = "/mdm-android-agent/operation/device-info"; var operationTable;
invokerUtil.post(serviceUrl, payload, if (deviceType == "ios") {
function (message) { serviceUrl = "/ios/operation/deviceinfo";
console.log(message); } else if (deviceType == "android") {
}, function (message) { //var serviceUrl = "/mdm-android-agent/operation/device-info";
console.log(message); serviceUrl = "/api/device-mgt/android/v1.0/admin/devices/info";
}); }
if (serviceUrl) {
invokerUtil.post(serviceUrl, payload,
function (message) {
console.log(message);
}, function (message) {
console.log(message);
});
}
$(document).ready(function () { $(document).ready(function () {
$(".panel-body").removeClass("hidden"); $(".panel-body").removeClass("hidden");
$("#loading-content").remove(); $("#loading-content").remove();
loadOperationsLog();
loadApplicationsList(); loadApplicationsList();
loadPolicyCompliance();
$("#refresh-policy").click(function () {
$('#policy-spinner').removeClass('hidden');
loadPolicyCompliance();
});
$("#refresh-apps").click(function () { $("#refresh-apps").click(function () {
$('#apps-spinner').removeClass('hidden'); $('#apps-spinner').removeClass('hidden');
loadApplicationsList(); loadApplicationsList();
}); });
$("#refresh-operations").click(function () {
$('#operations-spinner').removeClass('hidden');
loadOperationsLog(true);
});
loadOperationBar(deviceType); loadOperationBar(deviceType);
}); });
function loadOperationsLog(update) {
var operationsLogTable = "#operations-log-table";
if (update) {
operationTable = $(operationsLogTable).DataTable();
operationTable.ajax.reload(false);
return;
}
operationTable = $(operationsLogTable)
.datatables_extended({
serverSide: true,
processing: false,
searching: false,
ordering: false,
pageLength: 10,
order: [],
ajax: {
url: context + "/api/operation/paginate",
data: {
deviceId: deviceIdentifier,
deviceType: deviceType
},
dataSrc: function (json) {
$("#operations-spinner").addClass(
"hidden");
$("#operations-log-container").empty();
return json.data;
}
},
columnDefs: [
{targets: 0, data: "code"},
{
targets: 1,
data: "status",
render: function (status) {
var html;
switch (status) {
case "COMPLETED" :
html =
"<span><i class='fw fw-ok icon-success'></i> Completed</span>";
break;
case "PENDING" :
html =
"<span><i class='fw fw-warning icon-warning'></i> Pending</span>";
break;
case "ERROR" :
html =
"<span><i class='fw fw-error icon-danger'></i> Error</span>";
break;
case "IN_PROGRESS" :
html =
"<span><i class='fw fw-ok icon-warning'></i> In Progress</span>";
break;
case "REPEATED" :
html =
"<span><i class='fw fw-ok icon-warning'></i> Repeated</span>";
break;
}
return html;
}
},
{
targets: 2,
data: "createdTimeStamp",
render: function (date) {
var value = String(date);
return value.slice(0, 16);
}
}
],
"createdRow": function (row, data) {
$(row).attr("data-type", "selectable");
$(row).attr("data-id", data["id"]);
$.each($("td", row),
function (colIndex) {
switch (colIndex) {
case 1:
$(this).attr(
"data-grid-label",
"Code");
$(this).attr(
"data-display",
data["code"]);
break;
case 2:
$(this).attr(
"data-grid-label",
"Status");
$(this).attr(
"data-display",
data["status"]);
break;
case 3:
$(this).attr(
"data-grid-label",
"Created Timestamp");
$(this).attr(
"data-display",
data["createdTimeStamp"]);
break;
}
}
);
}
});
}
function loadApplicationsList() { function loadApplicationsList() {
var applicationsList = $("#applications-list"); var applicationsList = $("#applications-list");
var deviceListingSrc = applicationsList.attr("src"); var applicationListingTemplate = applicationsList.attr("src");
var deviceId = applicationsList.data("device-id"); var deviceId = applicationsList.data("device-id");
var deviceType = applicationsList.data("device-type"); var deviceType = applicationsList.data("device-type");
$.template("application-list", deviceListingSrc, function (template) { $.template("application-list", applicationListingTemplate, function (template) {
var serviceURL = "/devicemgt_admin/operations/" + deviceType + "/" + deviceId + "/apps"; var serviceURL = "/api/device-mgt/v1.0/devices/" + deviceType + "/" + deviceId + "/applications";
invokerUtil.get(
serviceURL,
// success-callback
function (data, textStatus, jqXHR) {
if (jqXHR.status == 200 && data) {
data = JSON.parse(data);
$("#apps-spinner").addClass("hidden");
if (data.length > 0) {
for (var i = 0; i < data.length; i++) {
data[i]["name"] = decodeURIComponent(data[i]["name"]);
data[i]["platform"] = deviceType;
}
var successCallback = function (data) { var viewModel = {};
data = JSON.parse(data); viewModel["applications"] = data;
$('#apps-spinner').addClass('hidden'); viewModel["deviceType"] = deviceType;
var viewModel = {}; var content = template(viewModel);
if (data != null && data.length > 0) { $("#applications-list-container").html(content);
for (var i = 0; i < data.length; i++) { } else {
data[i].name = data[i].name.replace(/[^\w\s]/gi, ' '); $("#applications-list-container").
data[i].name = data[i].name.replace(/[0-9]/g, ' '); html("<div class='message message-info'><h4><i class='icon fw fw-info'></i>No applications found.</h4>" +
"<p>Please try refreshing the list in a while.</p></div>");
}
} }
} },
viewModel.applications = data; // error-callback
viewModel.deviceType = deviceType; function () {
if (data.length > 0) { $("#applications-list-container").
var content = template(viewModel); html("<div class='panel-body'><br><p class='fw-warning'>&nbsp;Loading application list " +
$("#applications-list-container").html(content); "was not successful. please try refreshing the list in a while.<p></div>");
}
};
invokerUtil.get(serviceURL,
successCallback, function (message) {
console.log(message);
}); });
}); });
} }
function loadPolicyCompliance() {
var policyCompliance = $("#policy-view");
var policyComplianceTemplate = policyCompliance.attr("src");
var deviceId = policyCompliance.data("device-id");
var deviceType = policyCompliance.data("device-type");
var activePolicy = null;
$.template(
"policy-view",
policyComplianceTemplate,
function (template) {
var getEffectivePolicyURL = "/api/device-mgt/v1.0/devices/" + deviceType + "/" + deviceId + "/effective-policy";
var getDeviceComplianceURL = "/api/device-mgt/v1.0/devices/" + deviceType + "/" + deviceId + "/compliance-data";
invokerUtil.get(
getEffectivePolicyURL,
// success-callback
function (data, textStatus, jqXHR) {
if (jqXHR.status == 200 && data) {
data = JSON.parse(data);
$("#policy-spinner").addClass("hidden");
if (data["active"] == true) {
activePolicy = data;
invokerUtil.get(
getDeviceComplianceURL,
// success-callback
function (data, textStatus, jqXHR) {
if (jqXHR.status == 200 && data) {
var viewModel = {};
viewModel["policy"] = activePolicy;
viewModel["deviceType"] = deviceType;
data = JSON.parse(data);
var content;
if (data["complianceData"]) {
if (data["complianceData"]["complianceFeatures"] &&
data["complianceData"]["complianceFeatures"].length > 0) {
viewModel["compliance"] = "NON-COMPLIANT";
viewModel["complianceFeatures"] = data["complianceData"]["complianceFeatures"];
content = template(viewModel);
$("#policy-list-container").html(content);
} else {
viewModel["compliance"] = "COMPLIANT";
content = template(viewModel);
$("#policy-list-container").html(content);
$("#policy-compliance-table").addClass("hidden");
}
} else {
$("#policy-list-container").
html("<div class='panel-body'><br><p class='fw-warning'> This device " +
"has no policy applied.<p></div>");
}
}
},
// error-callback
function () {
$("#policy-list-container").
html("<div class='panel-body'><br><p class='fw-warning'> Loading policy compliance related data " +
"was not successful. please try refreshing data in a while.<p></div>");
}
);
}
}
},
// error-callback
function () {
$("#policy-list-container").
html("<div class='panel-body'><br><p class='fw-warning'> Loading policy compliance related data " +
"was not successful. please try refreshing data in a while.<p></div>");
}
);
}
);
}
}()); }());

@ -1822,13 +1822,13 @@ stepForwardFrom["policy-naming-publish"] = function () {
policy["policyName"] = $("#policy-name-input").val(); policy["policyName"] = $("#policy-name-input").val();
policy["description"] = $("#policy-description-input").val(); policy["description"] = $("#policy-description-input").val();
//All data is collected. Policy can now be updated. //All data is collected. Policy can now be updated.
savePolicy(policy, "/devicemgt_admin/policies/active-policy"); savePolicy(policy, "/api/device-mgt/v1.0/policies/active-policy");
}; };
stepForwardFrom["policy-naming"] = function () { stepForwardFrom["policy-naming"] = function () {
policy["policyName"] = $("#policy-name-input").val(); policy["policyName"] = $("#policy-name-input").val();
policy["description"] = $("#policy-description-input").val(); policy["description"] = $("#policy-description-input").val();
//All data is collected. Policy can now be updated. //All data is collected. Policy can now be updated.
savePolicy(policy, "/devicemgt_admin/policies/inactive-policy"); savePolicy(policy, "/api/device-mgt/v1.0/policies/inactive-policy");
}; };
var savePolicy = function (policy, serviceURL) { var savePolicy = function (policy, serviceURL) {
@ -2058,9 +2058,9 @@ $(document).ready(function () {
data: function (params) { data: function (params) {
var postData = {}; var postData = {};
postData.actionMethod = "GET"; postData.actionMethod = "GET";
postData.actionUrl = "/devicemgt_admin/users"; postData.actionUrl = "/api/device-mgt/v1.0/users/search/usernames";
postData.actionPayload = JSON.stringify({ postData.actionPayload = JSON.stringify({
q: params.term, // search term filter: params.term, // search term
page: params.page page: params.page
}); });

@ -18,7 +18,7 @@
var WEB_APP_TITLE = "WSO2 CDM"; var WEB_APP_TITLE = "WSO2 CDM";
var WEB_APP_CONTEXT = "/devicemgt"; var WEB_APP_CONTEXT = "/devicemgt";
var ADMIN_SERVICE_CONTEXT = "/devicemgt_admin"; var ADMIN_SERVICE_CONTEXT = "/api/device-mgt/v1.0";
var USER_SESSION_KEY = "_UUF_USER"; var USER_SESSION_KEY = "_UUF_USER";
var UNSPECIFIED = "Unspecified"; var UNSPECIFIED = "Unspecified";
var httpURL = "httpURL"; var httpURL = "httpURL";

@ -23,9 +23,10 @@
var payload = [deviceIdentifier]; var payload = [deviceIdentifier];
var operationTable; var operationTable;
if (deviceType == "ios") { if (deviceType == "ios") {
var serviceUrl = "/ios/operation/deviceinfo"; serviceUrl = "/ios/operation/deviceinfo";
} else if (deviceType == "android") { } else if (deviceType == "android") {
var serviceUrl = "/mdm-android-agent/operation/device-info"; //var serviceUrl = "/mdm-android-agent/operation/device-info";
serviceUrl = "/api/device-mgt/android/v1.0/admin/devices/info";
} }
if (serviceUrl) { if (serviceUrl) {
invokerUtil.post(serviceUrl, payload, invokerUtil.post(serviceUrl, payload,
@ -61,137 +62,224 @@
}); });
function loadOperationsLog(update) { function loadOperationsLog(update) {
var operationsLog = $("#operations-log"); var operationsLogTable = "#operations-log-table";
var deviceListingSrc = operationsLog.attr("src"); if (update) {
var deviceId = operationsLog.data("device-id"); operationTable = $(operationsLogTable).DataTable();
var deviceType = operationsLog.data("device-type"); operationTable.ajax.reload(false);
return;
$.template("operations-log", deviceListingSrc, function (template) { }
var serviceURL = "/devicemgt_admin/operations/" + deviceType + "/" + deviceId; operationTable = $(operationsLogTable)
.datatables_extended({
var successCallback = function (data) { serverSide: true,
data = JSON.parse(data); processing: false,
$('#operations-spinner').addClass('hidden'); searching: false,
var viewModel = {}; ordering: false,
viewModel.operations = data; pageLength: 10,
if (data.length > 0) { order: [],
var content = template(viewModel); ajax: {
if (!update) { url: context + "/api/operation/paginate",
$("#operations-log-container").html(content); data: {
operationTable = $('#operations-log-table').datatables_extended(); deviceId: deviceIdentifier,
} else { deviceType: deviceType
$('#operations-log-table').dataTable().fnClearTable(); },
for (var i = 0; i < data.length; i++) { dataSrc: function (json) {
var status; $("#operations-spinner").addClass(
if (data[i].status == "COMPLETED") { "hidden");
status = "<span><i class='fw fw-ok icon-success'></i> Completed</span>"; $("#operations-log-container").empty();
} else if (data[i].status == "PENDING") { return json.data;
status = "<span><i class='fw fw-warning icon-warning'></i> Pending</span>"; }
} else if (data[i].status == "ERROR") { },
status = "<span><i class='fw fw-error icon-danger'></i> Error</span>"; columnDefs: [
} else if (data[i].status == "IN_PROGRESS") { {targets: 0, data: "code"},
status = "<span><i class='fw fw-ok icon-warning'></i> In Progress</span>"; {
} targets: 1,
data: "status",
$('#operations-log-table').dataTable().fnAddData([ render: function (status) {
data[i].code, var html;
status, switch (status) {
data[i].createdTimeStamp case "COMPLETED" :
]); html =
} "<span><i class='fw fw-ok icon-success'></i> Completed</span>";
} break;
} case "PENDING" :
html =
}; "<span><i class='fw fw-warning icon-warning'></i> Pending</span>";
invokerUtil.get(serviceURL, break;
successCallback, function (message) { case "ERROR" :
console.log(message); html =
}); "<span><i class='fw fw-error icon-danger'></i> Error</span>";
}); break;
case "IN_PROGRESS" :
html =
"<span><i class='fw fw-ok icon-warning'></i> In Progress</span>";
break;
case "REPEATED" :
html =
"<span><i class='fw fw-ok icon-warning'></i> Repeated</span>";
break;
}
return html;
}
},
{
targets: 2,
data: "createdTimeStamp",
render: function (date) {
var value = String(date);
return value.slice(0, 16);
}
}
],
"createdRow": function (row, data) {
$(row).attr("data-type", "selectable");
$(row).attr("data-id", data["id"]);
$.each($("td", row),
function (colIndex) {
switch (colIndex) {
case 1:
$(this).attr(
"data-grid-label",
"Code");
$(this).attr(
"data-display",
data["code"]);
break;
case 2:
$(this).attr(
"data-grid-label",
"Status");
$(this).attr(
"data-display",
data["status"]);
break;
case 3:
$(this).attr(
"data-grid-label",
"Created Timestamp");
$(this).attr(
"data-display",
data["createdTimeStamp"]);
break;
}
}
);
}
});
} }
function loadApplicationsList() { function loadApplicationsList() {
var applicationsList = $("#applications-list"); var applicationsList = $("#applications-list");
var deviceListingSrc = applicationsList.attr("src"); var applicationListingTemplate = applicationsList.attr("src");
var deviceId = applicationsList.data("device-id"); var deviceId = applicationsList.data("device-id");
var deviceType = applicationsList.data("device-type"); var deviceType = applicationsList.data("device-type");
$.template("application-list", deviceListingSrc, function (template) { $.template("application-list", applicationListingTemplate, function (template) {
var serviceURL = "/devicemgt_admin/operations/" + deviceType + "/" + deviceId + "/apps"; var serviceURL = "/api/device-mgt/v1.0/devices/" + deviceType + "/" + deviceId + "/applications";
invokerUtil.get(
serviceURL,
// success-callback
function (data, textStatus, jqXHR) {
if (jqXHR.status == 200 && data) {
data = JSON.parse(data);
$("#apps-spinner").addClass("hidden");
if (data.length > 0) {
for (var i = 0; i < data.length; i++) {
data[i]["name"] = decodeURIComponent(data[i]["name"]);
data[i]["platform"] = deviceType;
}
var successCallback = function (data) { var viewModel = {};
data = JSON.parse(data); viewModel["applications"] = data;
$('#apps-spinner').addClass('hidden'); viewModel["deviceType"] = deviceType;
var viewModel = {}; var content = template(viewModel);
if (data != null && data.length > 0) { $("#applications-list-container").html(content);
for (var i = 0; i < data.length; i++) { } else {
data[i].name = data[i].name.replace(/[^\w\s]/gi, ' '); $("#applications-list-container").
data[i].name = data[i].name.replace(/[0-9]/g, ' '); html("<div class='message message-info'><h4><i class='icon fw fw-info'></i>No applications found.</h4>" +
"<p>Please try refreshing the list in a while.</p></div>");
}
} }
} },
viewModel.applications = data; // error-callback
viewModel.deviceType = deviceType; function () {
if (data.length > 0) { $("#applications-list-container").
var content = template(viewModel); html("<div class='panel-body'><br><p class='fw-warning'>&nbsp;Loading application list " +
$("#applications-list-container").html(content); "was not successful. please try refreshing the list in a while.<p></div>");
}
};
invokerUtil.get(serviceURL,
successCallback, function (message) {
console.log(message);
}); });
}); });
} }
function loadPolicyCompliance() { function loadPolicyCompliance() {
var policyCompliance = $("#policy-view"); var policyCompliance = $("#policy-view");
var policySrc = policyCompliance.attr("src"); var policyComplianceTemplate = policyCompliance.attr("src");
var deviceId = policyCompliance.data("device-id"); var deviceId = policyCompliance.data("device-id");
var deviceType = policyCompliance.data("device-type"); var deviceType = policyCompliance.data("device-type");
var activePolicy = null; var activePolicy = null;
$.template("policy-view", policySrc, function (template) { $.template(
var serviceURLPolicy = "/devicemgt_admin/policies/" + deviceType + "/" + deviceId + "/active-policy" "policy-view",
var serviceURLCompliance = "/devicemgt_admin/policies/" + deviceType + "/" + deviceId; policyComplianceTemplate,
function (template) {
var successCallbackCompliance = function (data) { var getEffectivePolicyURL = "/api/device-mgt/v1.0/devices/" + deviceType + "/" + deviceId + "/effective-policy";
var viewModel = {}; var getDeviceComplianceURL = "/api/device-mgt/v1.0/devices/" + deviceType + "/" + deviceId + "/compliance-data";
viewModel.policy = activePolicy;
viewModel.deviceType = deviceType;
if (data != null && data.complianceFeatures != null && data.complianceFeatures != undefined && data.complianceFeatures.length > 0) {
viewModel.compliance = "NON-COMPLIANT";
viewModel.complianceFeatures = data.complianceFeatures;
var content = template(viewModel);
$("#policy-list-container").html(content);
} else {
viewModel.compliance = "COMPLIANT";
var content = template(viewModel);
$("#policy-list-container").html(content);
$("#policy-compliance-table").addClass("hidden");
}
};
var successCallbackPolicy = function (data) {
data = JSON.parse(data);
$('#policy-spinner').addClass('hidden');
if (data != null && data.active == true) {
activePolicy = data;
invokerUtil.get(serviceURLCompliance,
successCallbackCompliance, function (message) {
console.log(message);
});
}
};
invokerUtil.get(serviceURLPolicy,
successCallbackPolicy, function (message) {
console.log(message);
});
});
invokerUtil.get(
getEffectivePolicyURL,
// success-callback
function (data, textStatus, jqXHR) {
if (jqXHR.status == 200 && data) {
data = JSON.parse(data);
$("#policy-spinner").addClass("hidden");
if (data["active"] == true) {
activePolicy = data;
invokerUtil.get(
getDeviceComplianceURL,
// success-callback
function (data, textStatus, jqXHR) {
if (jqXHR.status == 200 && data) {
var viewModel = {};
viewModel["policy"] = activePolicy;
viewModel["deviceType"] = deviceType;
data = JSON.parse(data);
var content;
if (data["complianceData"]) {
if (data["complianceData"]["complianceFeatures"] &&
data["complianceData"]["complianceFeatures"].length > 0) {
viewModel["compliance"] = "NON-COMPLIANT";
viewModel["complianceFeatures"] = data["complianceData"]["complianceFeatures"];
content = template(viewModel);
$("#policy-list-container").html(content);
} else {
viewModel["compliance"] = "COMPLIANT";
content = template(viewModel);
$("#policy-list-container").html(content);
$("#policy-compliance-table").addClass("hidden");
}
} else {
$("#policy-list-container").
html("<div class='panel-body'><br><p class='fw-warning'> This device " +
"has no policy applied.<p></div>");
}
}
},
// error-callback
function () {
$("#policy-list-container").
html("<div class='panel-body'><br><p class='fw-warning'> Loading policy compliance related data " +
"was not successful. please try refreshing data in a while.<p></div>");
}
);
}
}
},
// error-callback
function () {
$("#policy-list-container").
html("<div class='panel-body'><br><p class='fw-warning'> Loading policy compliance related data " +
"was not successful. please try refreshing data in a while.<p></div>");
}
);
}
);
} }
}()); }());

Loading…
Cancel
Save