refactored general configuration

revert-70aa11f8
ayyoob 8 years ago
parent c71e5ead00
commit a7074e2e4e

@ -16,7 +16,7 @@
* under the License. * under the License.
* *
*/ */
package org.wso2.carbon.device.mgt.jaxrs.service.api.admin; package org.wso2.carbon.device.mgt.jaxrs.service.api;
import io.swagger.annotations.*; import io.swagger.annotations.*;
import org.wso2.carbon.apimgt.annotations.api.API; import org.wso2.carbon.apimgt.annotations.api.API;
@ -30,7 +30,7 @@ import javax.ws.rs.core.Response;
@API(name = "Device Type Management", version = "1.0.0", context = "/admin/device-types", tags = {"devicemgt_admin"}) @API(name = "Device Type Management", version = "1.0.0", context = "/admin/device-types", tags = {"devicemgt_admin"})
@Path("/admin/device-types") @Path("/device-types")
@Api(value = "Device Type Management", description = "This API corresponds to all tasks related to device " + @Api(value = "Device Type Management", description = "This API corresponds to all tasks related to device " +
"type management") "type management")
@Produces(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON)

@ -16,14 +16,14 @@
* under the License. * under the License.
* *
*/ */
package org.wso2.carbon.device.mgt.jaxrs.service.impl.admin; package org.wso2.carbon.device.mgt.jaxrs.service.impl;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import org.wso2.carbon.device.mgt.common.DeviceManagementException; import org.wso2.carbon.device.mgt.common.DeviceManagementException;
import org.wso2.carbon.device.mgt.jaxrs.beans.DeviceTypeList; import org.wso2.carbon.device.mgt.jaxrs.beans.DeviceTypeList;
import org.wso2.carbon.device.mgt.jaxrs.beans.ErrorResponse; import org.wso2.carbon.device.mgt.jaxrs.beans.ErrorResponse;
import org.wso2.carbon.device.mgt.jaxrs.service.api.admin.DeviceTypeManagementService; import org.wso2.carbon.device.mgt.jaxrs.service.api.DeviceTypeManagementService;
import org.wso2.carbon.device.mgt.jaxrs.util.DeviceMgtAPIUtils; import org.wso2.carbon.device.mgt.jaxrs.util.DeviceMgtAPIUtils;
import javax.ws.rs.GET; import javax.ws.rs.GET;
@ -32,7 +32,7 @@ import javax.ws.rs.Path;
import javax.ws.rs.core.Response; import javax.ws.rs.core.Response;
import java.util.List; import java.util.List;
@Path("/admin/device-types") @Path("/device-types")
public class DeviceTypeManagementServiceImpl implements DeviceTypeManagementService { public class DeviceTypeManagementServiceImpl implements DeviceTypeManagementService {
private static Log log = LogFactory.getLog(DeviceTypeManagementServiceImpl.class); private static Log log = LogFactory.getLog(DeviceTypeManagementServiceImpl.class);

@ -107,7 +107,7 @@
<Permission> <Permission>
<name>View device types</name> <name>View device types</name>
<path>/device-mgt/admin/devices/Admin-DeviceType-View</path> <path>/device-mgt/admin/devices/Admin-DeviceType-View</path>
<url>/admin/device-types</url> <url>/device-types</url>
<method>GET</method> <method>GET</method>
</Permission> </Permission>
<!-- End of Device related APIs --> <!-- End of Device related APIs -->

@ -78,7 +78,7 @@
<bean id="groupManagementAdminService" class="org.wso2.carbon.device.mgt.jaxrs.service.impl.admin.GroupManagementAdminServiceImpl"/> <bean id="groupManagementAdminService" class="org.wso2.carbon.device.mgt.jaxrs.service.impl.admin.GroupManagementAdminServiceImpl"/>
<bean id="userManagementAdminService" class="org.wso2.carbon.device.mgt.jaxrs.service.impl.admin.UserManagementAdminServiceImpl"/> <bean id="userManagementAdminService" class="org.wso2.carbon.device.mgt.jaxrs.service.impl.admin.UserManagementAdminServiceImpl"/>
<bean id="dashboardServiceBean" class="org.wso2.carbon.device.mgt.jaxrs.service.impl.DashboardImpl"/> <bean id="dashboardServiceBean" class="org.wso2.carbon.device.mgt.jaxrs.service.impl.DashboardImpl"/>
<bean id="deviceTypeManagementAdminService" class="org.wso2.carbon.device.mgt.jaxrs.service.impl.admin.DeviceTypeManagementServiceImpl"/> <bean id="deviceTypeManagementAdminService" class="org.wso2.carbon.device.mgt.jaxrs.service.impl.DeviceTypeManagementServiceImpl"/>
<bean id="jsonProvider" class="org.wso2.carbon.device.mgt.jaxrs.common.GsonMessageBodyHandler"/> <bean id="jsonProvider" class="org.wso2.carbon.device.mgt.jaxrs.common.GsonMessageBodyHandler"/>
<!--<bean id="errorHandler" class="org.wso2.carbon.device.mgt.jaxrs.common.ErrorHandler"/>--> <!--<bean id="errorHandler" class="org.wso2.carbon.device.mgt.jaxrs.common.ErrorHandler"/>-->

@ -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";

@ -38,6 +38,32 @@ deviceModule = function () {
var deviceCloudService = devicemgtProps["httpsURL"] + "/common/device_manager"; var deviceCloudService = devicemgtProps["httpsURL"] + "/common/device_manager";
/**
* Only GET method is implemented for now since there are no other type of methods used this method.
* @param url - URL to call the backend without the host
* @param method - HTTP Method (GET, POST)
* @returns An object with 'status': 'success'|'error', 'content': {}
*/
privateMethods.callBackend = function (url, method) {
if (constants["HTTP_GET"] == method) {
return serviceInvokers.XMLHttp.get(url,
function (backendResponse) {
var response = {};
response.content = backendResponse.responseText;
if (backendResponse.status == 200) {
response.status = "success";
} else if (backendResponse.status == 400 || backendResponse.status == 401 ||
backendResponse.status == 404 || backendResponse.status == 500) {
response.status = "error";
}
return response;
}
);
} else {
log.error("Runtime error : This method only support HTTP GET requests.");
}
};
privateMethods.validateAndReturn = function (value) { privateMethods.validateAndReturn = function (value) {
return (value == undefined || value == null) ? constants.UNSPECIFIED : value; return (value == undefined || value == null) ? constants.UNSPECIFIED : value;
}; };
@ -289,16 +315,12 @@ deviceModule = function () {
}; };
publicMethods.getDeviceTypes = function () { publicMethods.getDeviceTypes = function () {
var url = devicemgtProps["httpsURL"] + constants.ADMIN_SERVICE_CONTEXT + "/devices/types"; var url = devicemgtProps["httpsURL"] + devicemgtProps["backendRestEndpoints"]["deviceMgt"] + "/device-types";
return serviceInvokers.XMLHttp.get( var response = privateMethods.callBackend(url, constants["HTTP_GET"]);
url, function (responsePayload) { if (response.status == "success") {
return responsePayload; response.content = parse(response.content);
}, }
function (responsePayload) { return response;
log.error(responsePayload);
return -1;
}
);
}; };
//Old methods //Old methods

@ -263,29 +263,30 @@ var userModule = function () {
/** /**
* Get Platforms. * Get Platforms.
* @deprecated moved this device module under getDeviceTypes.
*/ */
//TODO Move this piece of logic out of user.js to somewhere else appropriate. //TODO Move this piece of logic out of user.js to somewhere else appropriate.
publicMethods.getPlatforms = function () { //publicMethods.getPlatforms = function () {
var carbonUser = session.get(constants["USER_SESSION_KEY"]); // var carbonUser = session.get(constants["USER_SESSION_KEY"]);
var utility = require("/app/modules/utility.js")["utility"]; // var utility = require("/app/modules/utility.js")["utility"];
if (!carbonUser) { // if (!carbonUser) {
log.error("User object was not found in the session"); // log.error("User object was not found in the session");
throw constants["ERRORS"]["USER_NOT_FOUND"]; // throw constants["ERRORS"]["USER_NOT_FOUND"];
} // }
try { // try {
utility.startTenantFlow(carbonUser); // utility.startTenantFlow(carbonUser);
var url = devicemgtProps["httpsURL"] + devicemgtProps["backendRestEndpoints"]["deviceMgt"] + "/admin/device-types"; // var url = devicemgtProps["httpsURL"] + devicemgtProps["backendRestEndpoints"]["deviceMgt"] + "/device-types";
var response = privateMethods.callBackend(url, constants["HTTP_GET"]); // var response = privateMethods.callBackend(url, constants["HTTP_GET"]);
if (response.status == "success") { // if (response.status == "success") {
response.content = parse(response.content); // response.content = parse(response.content);
} // }
return response; // return response;
} catch (e) { // } catch (e) {
throw e; // throw e;
} finally { // } finally {
utility.endTenantFlow(); // utility.endTenantFlow();
} // }
}; //};
/** /**
* Get role * Get role

@ -50,21 +50,24 @@ function onRequest(context) {
if (deviceCount > 0) { if (deviceCount > 0) {
page.deviceCount = deviceCount; page.deviceCount = deviceCount;
var utility = require("/app/modules/utility.js").utility; var utility = require("/app/modules/utility.js").utility;
var data = deviceModule.getDeviceTypes(); var typesListResponse = deviceModule.getDeviceTypes();
var deviceTypes = []; var deviceTypes = [];
if (data) { if (typesListResponse["status"] == "success") {
for (var i = 0; i < data.length; i++) { var data = typesListResponse["content"];
var config = utility.getDeviceTypeConfig(data[i].name); if (data) {
if (!config){ for (var i = 0; i < data.length; i++) {
continue; var config = utility.getDeviceTypeConfig(data[i].name);
if (!config) {
continue;
}
var deviceType = config.deviceType;
deviceTypes.push({
"type": data[i].name,
"category": deviceType.category,
"label": deviceType.label,
"thumb": utility.getDeviceThumb(data[i].name)
});
} }
var deviceType = config.deviceType;
deviceTypes.push({
"type": data[i].name,
"category": deviceType.category,
"label": deviceType.label,
"thumb": utility.getDeviceThumb(data[i].name)
});
} }
} }
page.deviceTypes = stringify(deviceTypes); page.deviceTypes = stringify(deviceTypes);

@ -25,47 +25,49 @@ function onRequest(context) {
var viewModel = {}; var viewModel = {};
var deviceModule = require("/app/modules/device.js").deviceModule; var deviceModule = require("/app/modules/device.js").deviceModule;
var utility = require("/app/modules/utility.js").utility; var utility = require("/app/modules/utility.js").utility;
var deviceTypes = deviceModule.getDeviceTypes(); var typesListResponse = deviceModule.getDeviceTypes();
if (typesListResponse["status"] == "success") {
var deviceTypes = typesListResponse["content"];
if (deviceTypes) {
var deviceTypesList = [], virtualDeviceTypesList = [];
for (var i = 0; i < deviceTypes.length; i++) {
if (deviceTypes) { var deviceTypeLabel = deviceTypes[i].name;
var deviceTypesList = [], virtualDeviceTypesList = []; var configs = utility.getDeviceTypeConfig(deviceTypeLabel);
for (var i = 0; i < deviceTypes.length; i++) { var deviceCategory = "device";
if (configs) {
var deviceTypeLabel = deviceTypes[i].name; if (configs[DTYPE_CONF_DEVICE_TYPE_KEY][DTYPE_CONF_DEVICE_CATEGORY]) {
var configs = utility.getDeviceTypeConfig(deviceTypeLabel); deviceCategory = configs[DTYPE_CONF_DEVICE_TYPE_KEY][DTYPE_CONF_DEVICE_CATEGORY];
var deviceCategory = "device"; }
if (configs) { if (configs[DTYPE_CONF_DEVICE_TYPE_KEY][DTYPE_CONF_DEVICE_TYPE_LABEL_KEY]) {
if (configs[DTYPE_CONF_DEVICE_TYPE_KEY][DTYPE_CONF_DEVICE_CATEGORY]) { deviceTypeLabel = configs[DTYPE_CONF_DEVICE_TYPE_KEY][DTYPE_CONF_DEVICE_TYPE_LABEL_KEY];
deviceCategory = configs[DTYPE_CONF_DEVICE_TYPE_KEY][DTYPE_CONF_DEVICE_CATEGORY]; }
} }
if (configs[DTYPE_CONF_DEVICE_TYPE_KEY][DTYPE_CONF_DEVICE_TYPE_LABEL_KEY]) { if (deviceCategory == 'virtual') {
deviceTypeLabel = configs[DTYPE_CONF_DEVICE_TYPE_KEY][DTYPE_CONF_DEVICE_TYPE_LABEL_KEY]; virtualDeviceTypesList.push({
"hasCustTemplate": false,
"deviceTypeLabel": deviceTypeLabel,
"deviceTypeName": deviceTypes[i].name,
"deviceCategory": deviceCategory,
"deviceTypeId": deviceTypes[i].id,
"thumb": utility.getDeviceThumb(deviceTypes[i].name)
});
} else {
deviceTypesList.push({
"hasCustTemplate": false,
"deviceTypeLabel": deviceTypeLabel,
"deviceTypeName": deviceTypes[i].name,
"deviceCategory": deviceCategory,
"deviceTypeId": deviceTypes[i].id,
"thumb": utility.getDeviceThumb(deviceTypes[i].name)
});
} }
} }
if (deviceCategory == 'virtual') { if (virtualDeviceTypesList.length > 0) {
virtualDeviceTypesList.push({ viewModel.virtualDeviceTypesList = virtualDeviceTypesList;
"hasCustTemplate": false,
"deviceTypeLabel": deviceTypeLabel,
"deviceTypeName": deviceTypes[i].name,
"deviceCategory": deviceCategory,
"deviceTypeId": deviceTypes[i].id,
"thumb": utility.getDeviceThumb(deviceTypes[i].name)
});
} else {
deviceTypesList.push({
"hasCustTemplate": false,
"deviceTypeLabel": deviceTypeLabel,
"deviceTypeName": deviceTypes[i].name,
"deviceCategory": deviceCategory,
"deviceTypeId": deviceTypes[i].id,
"thumb": utility.getDeviceThumb(deviceTypes[i].name)
});
} }
viewModel.deviceTypesList = stringify(deviceTypesList);
} }
if (virtualDeviceTypesList.length > 0) {
viewModel.virtualDeviceTypesList = virtualDeviceTypesList;
}
viewModel.deviceTypesList = stringify(deviceTypesList);
} else { } else {
log.error("Unable to fetch device types data"); log.error("Unable to fetch device types data");
throw new Error("Unable to fetch device types!"); throw new Error("Unable to fetch device types!");

@ -15,107 +15,109 @@
specific language governing permissions and limitations specific language governing permissions and limitations
under the License. under the License.
}} }}
<div class="row"> {{#zone "content"}}
<div class="col-md-12"> <div class="row">
<!-- content --> <div class="col-md-12">
<div id="config-save-form" class="container col-centered wr-content"> <!-- content -->
<br> <div id="config-save-form" class="container col-centered wr-content">
<br>
<h1 class="page-sub-title"> <h1 class="page-sub-title">
Platform Configurations Platform Configurations
</h1> </h1>
<br> <br>
General and Platform Specific Server Settings for the Tenant General and Platform Specific Server Settings for the Tenant
<br> <br>
<br> <br>
<div class="wr-advance-operations"> <div class="wr-advance-operations">
<div class="row no-gutter"> <div class="row no-gutter">
<div class="wr-hidden-operations-nav col-lg-4"> <div class="wr-hidden-operations-nav col-lg-4">
<a id="generalConfigLink" href="javascript:void(0)" onclick="showAdvanceOperation('general', this)" class="selected"> <a id="generalConfigLink" href="javascript:void(0)" onclick="showAdvanceOperation('general', this)" class="selected">
<span class="wr-hidden-operations-icon fw-stack"> <span class="wr-hidden-operations-icon fw-stack">
<i class="fw fw-settings fw-stack-2x"></i> <i class="fw fw-settings fw-stack-2x"></i>
</span> </span>
General Configurations General Configurations
</a>
{{#each deviceTypes}}
<a id="{{name}}ConfigLink" href="javascript:void(0)" onclick="showAdvanceOperation('{{name}}', this)">
<span class="wr-hidden-operations-icon fw-stack">
<i class="fw fw-settings fw-stack-2x"></i>
</span>
{{label}} Configurations
</a> </a>
{{/each}} {{#each deviceTypes}}
</div> <a id="{{name}}ConfigLink" href="javascript:void(0)" onclick="showAdvanceOperation('{{name}}', this)">
<span class="wr-hidden-operations-icon fw-stack">
<i class="fw fw-settings fw-stack-2x"></i>
</span>
{{label}} Configurations
</a>
{{/each}}
</div>
<div class="wr-hidden-operations-content col-lg-8"> <div class="wr-hidden-operations-content col-lg-8">
<!-- general --> <!-- general -->
<div class="wr-hidden-operation" data-operation="general" style="display: block"> <div class="wr-hidden-operation" data-operation="general" style="display: block">
<div class="panel panel-default"> <div class="panel panel-default">
<div id="general-config-heading" class="panel-heading" role="tab"> <div id="general-config-heading" class="panel-heading" role="tab">
<h2 class="sub-title panel-title"> <h2 class="sub-title panel-title">
Policy Monitoring Policy Monitoring
</h2> </h2>
</div>
<div id="email-config-body" class="panel-collapse panel-body"
role="tabpanel">
<div id="email-config-error-msg"
class="alert alert-danger hidden" role="alert">
<i class="icon fw fw-error"></i><span></span>
</div>
<div class="wr-input-control">
<label class="wr-input-label" for="email-config-host">
Monitoring Frequency
<span class="helper" title="SMTP Server Host">
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
</span>
<br>
( Should be in milliseconds )
</label>
<input id="monitoring-config-frequency" type="text"
class="form-control"
placeholder="[ Required Field ]">
</div> </div>
<div class="wr-input-control wr-btn-grp"> <div id="email-config-body" class="panel-collapse panel-body"
<button id="save-general-btn" class="wr-btn"> role="tabpanel">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Save&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <div id="email-config-error-msg"
</button> class="alert alert-danger hidden" role="alert">
<i class="icon fw fw-error"></i><span></span>
</div>
<div class="wr-input-control">
<label class="wr-input-label" for="email-config-host">
Monitoring Frequency
<span class="helper" title="SMTP Server Host">
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
</span>
<br>
( Should be in milliseconds )
</label>
<input id="monitoring-config-frequency" type="text"
class="form-control"
placeholder="[ Required Field ]">
</div>
<div class="wr-input-control wr-btn-grp">
<button id="save-general-btn" class="wr-btn">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Save&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</button>
</div>
</div> </div>
</div> </div>
</div> </div>
</div> <!-- general-->
<!-- general--> {{#each deviceTypes}}
{{#each deviceTypes}} <div class="wr-hidden-operation" data-operation="{{name}}" style="display: none;">
<div class="wr-hidden-operation" data-operation="{{name}}" style="display: none;"> {{unit unitName}}
{{unit unitName}} </div>
</div> {{/each}}
{{/each}}
</div>
</div> </div>
</div> </div>
</div> </div>
</div>
<div id="record-created-msg" class="container col-centered wr-content hidden"> <div id="record-created-msg" class="container col-centered wr-content hidden">
<div class="wr-form"> <div class="wr-form">
<p class="page-sub-title">Configuration was saved successfully.</p> <p class="page-sub-title">Configuration was saved successfully.</p>
<br> <br>
<br>Please click <b>"Go back to configurations"</b>, if you wish to save another <br>Please click <b>"Go back to configurations"</b>, if you wish to save another
configuration or click configuration or click
<b>"Exit"</b> to complete the process and go back to the dashboard. <b>"Exit"</b> to complete the process and go back to the dashboard.
<hr/> <hr/>
<button class="wr-btn" <button class="wr-btn"
onclick="window.location.href='{{@app.context}}/platform-configuration'">Go onclick="window.location.href='{{@app.context}}/platform-configuration'">Go
back back
to to
configurations configurations
</button> </button>
<button class="wr-btn" onclick="window.location.href='{{@app.context}}'">&nbsp;&nbsp;&nbsp;&nbsp;Exit&nbsp;&nbsp;&nbsp;&nbsp;</button> <button class="wr-btn" onclick="window.location.href='{{@app.context}}'">&nbsp;&nbsp;&nbsp;&nbsp;Exit&nbsp;&nbsp;&nbsp;&nbsp;</button>
</div>
</div> </div>
<!-- /content -->
</div> </div>
<!-- /content -->
</div> </div>
</div> {{/zone}}
{{#zone "bottomJs"}} {{#zone "bottomJs"}}
{{js "js/platform-configuration.js"}} {{js "js/platform-configuration.js"}}
{{/zone}} {{/zone}}

@ -20,15 +20,22 @@ function onRequest(context) {
var utility = require("/app/modules/device.js").utility; var utility = require("/app/modules/device.js").utility;
var deviceModule = require("/app/modules/device.js").deviceModule; var deviceModule = require("/app/modules/device.js").deviceModule;
//get all device types //get all device types
var data = deviceModule.getDeviceTypes();
var deviceTypesArray = []; var deviceTypesArray = [];
if (data) { var typesListResponse = deviceModule.getDeviceTypes();
for (var i = 0; i < data.length; i++) { if (typesListResponse["status"] == "success") {
var deviceTypeName = data[i].name; var data = typesListResponse["content"].deviceTypes;
var configUnitName = utility.getTenantedDeviceUnitName(deviceTypeName, "platform.configuration"); if (data) {
if(configUnitName) { for (var i = 0; i < data.length; i++) {
var deviceTypeConfig = utility.getDeviceTypeConfig(deviceTypeName); var deviceTypeName = data[i];
deviceTypesArray.push({name: deviceTypeName, label:deviceTypeConfig.deviceType.label, unitName : configUnitName}); var configUnitName = utility.getTenantedDeviceUnitName(deviceTypeName, "platform.configuration");
if (configUnitName) {
var deviceTypeConfig = utility.getDeviceTypeConfig(deviceTypeName);
deviceTypesArray.push({
name: deviceTypeName,
label: deviceTypeConfig.deviceType.label,
unitName: configUnitName
});
}
} }
} }
} }

@ -41,7 +41,7 @@ $(document).ready(function () {
} }
invokerUtil.get( invokerUtil.get(
"/devicemgt_admin/configuration", "/api/device-mgt/v1.0/configuration",
function (data) { function (data) {
data = JSON.parse(data); data = JSON.parse(data);
if (data && data.configuration) { if (data && data.configuration) {
@ -85,13 +85,13 @@ $(document).ready(function () {
configList.push(monitorFrequency); configList.push(monitorFrequency);
addConfigFormData.configuration = configList; addConfigFormData.configuration = configList;
var addConfigAPI = "/devicemgt_admin/configuration"; var addConfigAPI = "/api/device-mgt/v1.0/configuration";
invokerUtil.post( invokerUtil.put(
addConfigAPI, addConfigAPI,
addConfigFormData, addConfigFormData,
function (data) { function (data, textStatus, jqXHR) {
data = JSON.parse(data); data = jqXHR.status;
if (data.statusCode == responseCodes["SUCCESS"]) { if (data == 200) {
$("#config-save-form").addClass("hidden"); $("#config-save-form").addClass("hidden");
$("#record-created-msg").removeClass("hidden"); $("#record-created-msg").removeClass("hidden");
} else if (data == 500) { } else if (data == 500) {
@ -118,3 +118,12 @@ $(document).ready(function () {
} }
}); });
}); });
// Start of HTML embedded invoke methods
var showAdvanceOperation = function (operation, button) {
$(button).addClass('selected');
$(button).siblings().removeClass('selected');
var hiddenOperation = ".wr-hidden-operations-content > div";
$(hiddenOperation + '[data-operation="' + operation + '"]').show();
$(hiddenOperation + '[data-operation="' + operation + '"]').siblings().hide();
};

@ -21,11 +21,11 @@ function onRequest(context) {
var DTYPE_CONF_DEVICE_TYPE_LABEL_KEY = "label"; var DTYPE_CONF_DEVICE_TYPE_LABEL_KEY = "label";
var utility = require("/app/modules/utility.js").utility; var utility = require("/app/modules/utility.js").utility;
var userModule = require("/app/modules/user.js")["userModule"]; var deviceModule = require("/app/modules/device.js").deviceModule;
var types = {}; var types = {};
types["types"] = []; types["types"] = [];
var typesListResponse = userModule.getPlatforms(); var typesListResponse = deviceModule.getDeviceTypes();
if (typesListResponse["status"] == "success") { if (typesListResponse["status"] == "success") {
for (var type in typesListResponse["content"]) { for (var type in typesListResponse["content"]) {
var deviceType = typesListResponse["content"][type]["name"]; var deviceType = typesListResponse["content"][type]["name"];

Loading…
Cancel
Save