mirror of
https://repository.entgra.net/community/device-mgt-plugins.git
synced 2025-09-16 23:42:15 +00:00
fixing code conflicts
This commit is contained in:
commit
29c1b055d9
@ -21,7 +21,6 @@ package org.wso2.carbon.mdm.services.android.services;
|
||||
import io.swagger.annotations.*;
|
||||
import org.wso2.carbon.apimgt.annotations.api.API;
|
||||
import org.wso2.carbon.apimgt.annotations.api.Permission;
|
||||
import org.wso2.carbon.apimgt.annotations.api.Scope;
|
||||
import org.wso2.carbon.device.mgt.common.operation.mgt.Activity;
|
||||
import org.wso2.carbon.mdm.services.android.bean.wrapper.*;
|
||||
|
||||
@ -93,7 +92,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new lock operation.")
|
||||
})
|
||||
@Permission(name = "Lock Device", permission = "/device-mgt/devices/owning/operations/android/lock")
|
||||
@Permission(name = "Lock Device", permission = "/device-mgt/devices/owning-device/operations/android/lock")
|
||||
Response configureDeviceLock(
|
||||
@ApiParam(name = "deviceLockBeanWrapper",
|
||||
value = "Device lock configurations with device IDs") DeviceLockBeanWrapper deviceLockBeanWrapper);
|
||||
@ -147,7 +146,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new un-lock operation.")
|
||||
})
|
||||
@Permission(name = "Unlock Device", permission = "/device-mgt/devices/owning/operations/android/unlock")
|
||||
@Permission(name = "Unlock Device", permission = "/device-mgt/devices/owning-device/operations/android/unlock")
|
||||
Response configureDeviceUnlock(
|
||||
@ApiParam(name = "deviceIDs", value = "DeviceIds to be enable device unlock operation")
|
||||
List<String> deviceIDs);
|
||||
@ -200,7 +199,7 @@ public interface DeviceManagementAdminService {
|
||||
code = 500,
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new get-location operation.")})
|
||||
@Permission(name = "Get Device Location", permission = "/device-mgt/devices/owning/operations/android/location")
|
||||
@Permission(name = "Get Device Location", permission = "/device-mgt/devices/owning-device/operations/android/location")
|
||||
Response getDeviceLocation(
|
||||
@ApiParam(name = "deviceIDs", value = "DeviceIDs to be requested to get device location")
|
||||
List<String> deviceIDs);
|
||||
@ -253,7 +252,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new clear password operation.")
|
||||
})
|
||||
@Permission(name = "Clear Password of Device", permission = "/device-mgt/devices/owning/operations/android/clear-password")
|
||||
@Permission(name = "Clear Password of Device", permission = "/device-mgt/devices/owning-device/operations/android/clear-password")
|
||||
Response removePassword(
|
||||
@ApiParam(name = "deviceIDs",
|
||||
value = "DeviceIds to be requested to remove password") List<String> deviceIDs);
|
||||
@ -306,7 +305,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new control camera operation.")
|
||||
})
|
||||
@Permission(name = "Manage Camera", permission = "/device-mgt/devices/owning/operations/android/camera")
|
||||
@Permission(name = "Manage Camera", permission = "/device-mgt/devices/owning-device/operations/android/camera")
|
||||
Response configureCamera(
|
||||
@ApiParam(name = "cameraBeanWrapper", value = "Camera enable/disable configurations with device IDs")
|
||||
CameraBeanWrapper cameraBeanWrapper);
|
||||
@ -362,7 +361,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new device info operation.")
|
||||
})
|
||||
@Permission(name = "Get Device Information", permission = "/device-mgt/devices/owning/operations/android/info")
|
||||
@Permission(name = "Get Device Information", permission = "/device-mgt/devices/owning-device/operations/android/info")
|
||||
Response getDeviceInformation(
|
||||
@ApiParam(name = "deviceIds", value = "Device IDs to be requested to get device information")
|
||||
List<String> deviceIDs);
|
||||
@ -418,7 +417,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new device logcat operation.")
|
||||
})
|
||||
@Permission(name = "Get Logs", permission = "/device-mgt/devices/owning/operations/android/logcat")
|
||||
@Permission(name = "Get Logs", permission = "/device-mgt/devices/owning-device/operations/android/logcat")
|
||||
Response getDeviceLogcat(
|
||||
@ApiParam(name = "deviceIds", value = "Device IDs to be requested to get device logcat")
|
||||
List<String> deviceIDs);
|
||||
@ -472,7 +471,7 @@ public interface DeviceManagementAdminService {
|
||||
code = 500,
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a enterprise wipe operation.")})
|
||||
@Permission(name = "Enterprise Wipe", permission = "/device-mgt/devices/owning/operations/android/enterprise-wipe")
|
||||
@Permission(name = "Enterprise Wipe", permission = "/device-mgt/devices/owning-device/operations/android/enterprise-wipe")
|
||||
Response wipeDevice(@ApiParam(name = "deviceIDs", value = "Device IDs to be requested to do enterprise-wipe")
|
||||
List<String> deviceIDs);
|
||||
|
||||
@ -524,7 +523,7 @@ public interface DeviceManagementAdminService {
|
||||
code = 500,
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a device wipe operation.")})
|
||||
@Permission(name = "Factory Reset", permission = "/device-mgt/devices/owning/operations/android/wipe")
|
||||
@Permission(name = "Factory Reset", permission = "/device-mgt/devices/owning-device/operations/android/wipe")
|
||||
Response wipeData(
|
||||
@ApiParam(name = "wipeDataBeanWrapper", value = "Configurations and DeviceIds needed to do wipe-data")
|
||||
WipeDataBeanWrapper wipeDataBeanWrapper);
|
||||
@ -581,7 +580,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new get-applications operation.")
|
||||
})
|
||||
@Permission(name = "Get Installed Application", permission = "/device-mgt/devices/owning/operations/android/applications")
|
||||
@Permission(name = "Get Installed Application", permission = "/device-mgt/devices/owning-device/operations/android/applications")
|
||||
Response getApplications(
|
||||
@ApiParam(name = "deviceIDs", value = "Device Ids needed to get applications that are already installed")
|
||||
List<String> deviceIDs);
|
||||
@ -634,7 +633,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new device ring operation.")
|
||||
})
|
||||
@Permission(name = "Ring Device", permission = "/device-mgt/devices/owning/operations/android/ring")
|
||||
@Permission(name = "Ring Device", permission = "/device-mgt/devices/owning-device/operations/android/ring")
|
||||
Response ringDevice(
|
||||
@ApiParam(name = "deviceIDs", value = "Device Ids needed for ring")
|
||||
List<String> deviceIDs);
|
||||
@ -687,7 +686,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new device reboot operation.")
|
||||
})
|
||||
@Permission(name = "Reboot Device", permission = "/device-mgt/devices/owning/operations/android/reboot")
|
||||
@Permission(name = "Reboot Device", permission = "/device-mgt/devices/owning-device/operations/android/reboot")
|
||||
Response rebootDevice(
|
||||
@ApiParam(name = "deviceIDs", value = "Device Ids needed for reboot.")
|
||||
List<String> deviceIDs);
|
||||
@ -740,7 +739,7 @@ public interface DeviceManagementAdminService {
|
||||
"Server error occurred while adding a new device mute operation.")
|
||||
})
|
||||
@Path("/mute")
|
||||
@Permission(name = "Mute Device", permission = "/device-mgt/devices/owning/operations/android/mute")
|
||||
@Permission(name = "Mute Device", permission = "/device-mgt/devices/owning-device/operations/android/mute")
|
||||
Response muteDevice(
|
||||
@ApiParam(name = "deviceIDs", value = "DeviceIDs need to be muted")
|
||||
List<String> deviceIDs);
|
||||
@ -796,7 +795,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new install-application operation.")
|
||||
})
|
||||
@Permission(name = "Install Applications", permission = "/device-mgt/devices/owning/operations/android/install-app")
|
||||
@Permission(name = "Install Applications", permission = "/device-mgt/devices/owning-device/operations/android/install-app")
|
||||
Response installApplication(
|
||||
@ApiParam(name = "applicationInstallationBeanWrapper", value = "Properties of installed apps and device IDs")
|
||||
ApplicationInstallationBeanWrapper applicationInstallationBeanWrapper);
|
||||
@ -852,7 +851,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new update-application operation.")
|
||||
})
|
||||
@Permission(name = "Update installed applications", permission = "/device-mgt/devices/owning/operations/android/update-app")
|
||||
@Permission(name = "Update installed applications", permission = "/device-mgt/devices/owning-device/operations/android/update-app")
|
||||
Response updateApplication(
|
||||
@ApiParam(name = "applicationUpdateBeanWrapper", value = "Properties of updated apps and device IDs")
|
||||
ApplicationUpdateBeanWrapper applicationUpdateBeanWrapper);
|
||||
@ -905,7 +904,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new uninstall-application operation.")
|
||||
})
|
||||
@Permission(name = "Uninstall Applications", permission = "/device-mgt/devices/owning/operations/android/uninstall-app")
|
||||
@Permission(name = "Uninstall Applications", permission = "/device-mgt/devices/owning-device/operations/android/uninstall-app")
|
||||
Response uninstallApplication(
|
||||
@ApiParam(name = "applicationUninstallationBeanWrapper",
|
||||
value = "applicationUninstallationConfigs and Device Ids")
|
||||
@ -960,7 +959,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new blacklist-applications operation.")
|
||||
})
|
||||
@Permission(name = "Blacklist Applications", permission = "/device-mgt/devices/owning/operations/android/blacklist-app")
|
||||
@Permission(name = "Blacklist Applications", permission = "/device-mgt/devices/owning-device/operations/android/blacklist-app")
|
||||
Response blacklistApplications(
|
||||
@ApiParam(name = "blacklistApplicationsBeanWrapper", value = "BlacklistApplications " +
|
||||
"Configuration and DeviceIds")
|
||||
@ -1015,7 +1014,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new upgrade firmware operation.")
|
||||
})
|
||||
@Permission(name = "Upgrade Firmware", permission = "/device-mgt/devices/owning/operations/android/upgrade")
|
||||
@Permission(name = "Upgrade Firmware", permission = "/device-mgt/devices/owning-device/operations/android/upgrade")
|
||||
Response upgradeFirmware(
|
||||
@ApiParam(name = "upgradeFirmwareBeanWrapper",
|
||||
value = "Firmware upgrade configuration and DeviceIds")
|
||||
@ -1070,7 +1069,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new configure VPN operation.")
|
||||
})
|
||||
@Permission(name = "Add VPN", permission = "/device-mgt/devices/owning/operations/android/vpn")
|
||||
@Permission(name = "Add VPN", permission = "/device-mgt/devices/owning-device/operations/android/vpn")
|
||||
Response configureVPN(
|
||||
@ApiParam(name = "vpnBeanWrapper",
|
||||
value = "VPN configuration and DeviceIds")
|
||||
@ -1124,7 +1123,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new send notification operation.")
|
||||
})
|
||||
@Permission(name = "Send Notifications", permission = "/device-mgt/devices/owning/operations/android/notification")
|
||||
@Permission(name = "Send Notifications", permission = "/device-mgt/devices/owning-device/operations/android/send-notification")
|
||||
Response sendNotification(
|
||||
@ApiParam(name = "notificationBeanWrapper",
|
||||
value = "Notification Configurations and device Ids")
|
||||
@ -1178,7 +1177,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new configure wifi operation.")
|
||||
})
|
||||
@Permission(name = "Add Wifi Configuration", permission = "/device-mgt/devices/owning/operations/android/wifi")
|
||||
@Permission(name = "Add Wifi Configuration", permission = "/device-mgt/devices/owning-device/operations/android/wifi")
|
||||
Response configureWifi(
|
||||
@ApiParam(name = "wifiBeanWrapper",
|
||||
value = "WifiConfigurations and Device Ids") WifiBeanWrapper wifiBeanWrapper);
|
||||
@ -1231,7 +1230,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new encrypt storage operation.")
|
||||
})
|
||||
@Permission(name = "Encrypt Device", permission = "/device-mgt/devices/owning/operations/android/encrypt")
|
||||
@Permission(name = "Encrypt Device", permission = "/device-mgt/devices/owning-device/operations/android/encrypt")
|
||||
Response encryptStorage(
|
||||
@ApiParam(name = "encryptionBeanWrapper",
|
||||
value = "Configurations and deviceIds need to be done data encryption")
|
||||
@ -1285,7 +1284,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new change lock code operation.")
|
||||
})
|
||||
@Permission(name = "Change Password of Device", permission = "/device-mgt/devices/owning/operations/android/change-lock")
|
||||
@Permission(name = "Change Password of Device", permission = "/device-mgt/devices/owning-device/operations/android/change-lock-code")
|
||||
Response changeLockCode(
|
||||
@ApiParam(name = "lockCodeBeanWrapper",
|
||||
value = "Configurations and device Ids need to be done change lock code")
|
||||
@ -1339,7 +1338,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new set password policy operation.")
|
||||
})
|
||||
@Permission(name = "Set Password Policy", permission = "/device-mgt/devices/owning/operations/android/password-policy")
|
||||
@Permission(name = "Set Password Policy", permission = "/device-mgt/devices/owning-device/operations/android/password-policy")
|
||||
Response setPasswordPolicy(
|
||||
@ApiParam(name = "passwordPolicyBeanWrapper",
|
||||
value = "Password Policy Configurations and Device Ids")
|
||||
@ -1393,7 +1392,7 @@ public interface DeviceManagementAdminService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while adding a new set webclip operation.")
|
||||
})
|
||||
@Permission(name = "Add Webclips", permission = "/device-mgt/devices/owning/operations/android/webclip")
|
||||
@Permission(name = "Add Webclips", permission = "/device-mgt/devices/owning-device/operations/android/webclip")
|
||||
Response setWebClip(
|
||||
@ApiParam(name = "webClipBeanWrapper",
|
||||
value = "Configurations to need set web clip on device and device Ids")
|
||||
|
||||
@ -21,7 +21,6 @@ package org.wso2.carbon.mdm.services.android.services;
|
||||
import io.swagger.annotations.*;
|
||||
import org.wso2.carbon.apimgt.annotations.api.API;
|
||||
import org.wso2.carbon.apimgt.annotations.api.Permission;
|
||||
import org.wso2.carbon.apimgt.annotations.api.Scope;
|
||||
import org.wso2.carbon.device.mgt.common.configuration.mgt.PlatformConfiguration;
|
||||
import org.wso2.carbon.mdm.services.android.bean.AndroidPlatformConfiguration;
|
||||
import org.wso2.carbon.mdm.services.android.exception.AndroidAgentException;
|
||||
@ -82,7 +81,7 @@ public interface DeviceTypeConfigurationService {
|
||||
code = 500,
|
||||
message = "Internal Server Error. \n Server error occurred while fetching Android platform configuration.")
|
||||
})
|
||||
@Permission(name = "View Configurations", permission = "/device-mgt/configurations/view")
|
||||
@Permission(name = "View Configurations", permission = "/device-mgt/platform-configurations/view")
|
||||
Response getConfiguration(
|
||||
@ApiParam(
|
||||
name = "If-Modified-Since",
|
||||
@ -132,7 +131,7 @@ public interface DeviceTypeConfigurationService {
|
||||
message = "Internal Server Error. \n " +
|
||||
"Server error occurred while modifying Android platform configuration.")
|
||||
})
|
||||
@Permission(name = "Manage Configurations", permission = "/device-mgt/configurations/manage")
|
||||
@Permission(name = "Manage Configurations", permission = "/device-mgt/platform-configurations/manage")
|
||||
Response updateConfiguration(
|
||||
@ApiParam(name = "configuration",
|
||||
value = "AndroidPlatformConfiguration")
|
||||
|
||||
@ -19,8 +19,8 @@
|
||||
{{unit "cdmf.unit.lib.qrcode"}}
|
||||
{{unit "mdm.unit.device.qr-modal"}}
|
||||
{{#zone "content"}}
|
||||
<div class="row ">
|
||||
{{#if permissions.LIST_DEVICES}}
|
||||
<div class="row ">
|
||||
<div class="col-md-3 wr-stats-board">
|
||||
<div class="wr-stats-board-tile">
|
||||
<div class="tile-name">Devices</div>
|
||||
@ -150,8 +150,15 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{# if permissions.PERMITTED_NONE}}
|
||||
<h1 class="page-sub-title">
|
||||
Permitted None
|
||||
</h1>
|
||||
<br>
|
||||
You are not authorized to view any of the dashboard listed resources.
|
||||
{{/if}}
|
||||
</div>
|
||||
{{/zone}}
|
||||
{{#zone "bottomJs"}}
|
||||
{{js "js/dashboard.js"}}
|
||||
|
||||
@ -16,24 +16,27 @@
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
function onRequest(context) {
|
||||
function onRequest() {
|
||||
var userModule = require("/app/modules/business-controllers/user.js")["userModule"];
|
||||
var generalConfig = context.app.conf["generalConfig"];
|
||||
var mdmProps = require("/app/modules/conf-reader/main.js")["conf"];
|
||||
|
||||
var viewModel = {};
|
||||
var permissions = {};
|
||||
permissions.LIST_DEVICES = userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/view");
|
||||
permissions.LIST_POLICIES = userModule.isAuthorized("/permission/admin/device-mgt/policies/view");
|
||||
permissions.LIST_ROLES = userModule.isAuthorized("/permission/admin/device-mgt/roles/view");
|
||||
permissions.LIST_USERS = userModule.isAuthorized("/permission/admin/device-mgt/users/view");
|
||||
permissions.ADD_POLICY = userModule.isAuthorized("/permission/admin/device-mgt/policies/manage");
|
||||
permissions.ADD_ROLE = userModule.isAuthorized("/permission/admin/device-mgt/roles/manage");
|
||||
permissions.ADD_USER = userModule.isAuthorized("/permission/admin/device-mgt/users/manage");
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/enroll/ios") | userModule.isAuthorized("/permission/admin/devices/enroll/android") | userModule.isAuthorized("/permission/admin/device-mgt/devices/enroll/windows") ){
|
||||
permissions.ENROLL_DEVICE = true;
|
||||
}
|
||||
viewModel.permissions = permissions;
|
||||
permissions["LIST_DEVICES"] = userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/view");
|
||||
permissions["ENROLL_DEVICE"] = userModule.isAuthorized("/permission/admin/device-mgt/devices/enroll/ios") ||
|
||||
userModule.isAuthorized("/permission/admin/devices/enroll/android") ||
|
||||
userModule.isAuthorized("/permission/admin/device-mgt/devices/enroll/windows");
|
||||
permissions["LIST_POLICIES"] = userModule.isAuthorized("/permission/admin/device-mgt/policies/view");
|
||||
permissions["ADD_POLICY"] = userModule.isAuthorized("/permission/admin/device-mgt/policies/manage");
|
||||
permissions["LIST_USERS"] = userModule.isAuthorized("/permission/admin/device-mgt/users/view");
|
||||
permissions["ADD_USER"] = userModule.isAuthorized("/permission/admin/device-mgt/users/manage");
|
||||
permissions["LIST_ROLES"] = userModule.isAuthorized("/permission/admin/device-mgt/roles/view");
|
||||
permissions["ADD_ROLE"] = userModule.isAuthorized("/permission/admin/device-mgt/roles/manage");
|
||||
permissions["PERMITTED_NONE"] = !(permissions["LIST_DEVICES"] || permissions["LIST_POLICIES"] ||
|
||||
permissions["LIST_USERS"] || permissions["LIST_ROLES"]);
|
||||
|
||||
viewModel["permissions"] = permissions;
|
||||
//TODO: Move enrollment URL into app-conf.json
|
||||
viewModel.enrollmentURL = mdmProps.generalConfig.host + mdmProps.enrollmentDir;
|
||||
viewModel["enrollmentURL"] = mdmProps["generalConfig"]["host"] + mdmProps["enrollmentDir"];
|
||||
return viewModel;
|
||||
}
|
||||
@ -22,7 +22,7 @@ function onRequest(context){
|
||||
|
||||
// permission checks
|
||||
// [1] checking viewing devices permission
|
||||
viewModel["isAuthorized"] = userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/view");
|
||||
viewModel["isAuthorized"] = userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/view");
|
||||
|
||||
if (viewModel["isAuthorized"]) {
|
||||
context.handlebars.registerHelper('equal', function (lvalue, rvalue, options) {
|
||||
|
||||
@ -138,20 +138,19 @@
|
||||
</div>
|
||||
<div id="no-device-view" class="ast-container list-view hidden">
|
||||
<div class="ctrl-info-panel col-centered text-center wr-login">
|
||||
<h2>You don't have any device registered at the moment.</h2>
|
||||
<br/>
|
||||
<h2>You do not have any device enrolled at the moment.</h2>
|
||||
<p class="text-center">
|
||||
<a href="javascript:toggleEnrollment()" class="wr-btn">
|
||||
<span class="fw-stack">
|
||||
<i class="fw fw-ring fw-stack-2x"></i>
|
||||
<i class="fw fw-mobile fw-stack-1x"></i>
|
||||
<span class="fw-stack fw-move-right fw-move-bottom">
|
||||
<i class="fw fw-circle fw-stack-2x fw-stroke fw-inverse"></i>
|
||||
<i class="fw fw-circle fw-stack-2x"></i>
|
||||
<i class="fw fw-add fw-stack-1x"></i>
|
||||
<i class="fw fw-ring fw-stack-2x"></i>
|
||||
<i class="fw fw-circle fw-stack-2x fw-stroke text-info"></i>
|
||||
<i class="fw fw-add fw-stack-1x fw-inverse"></i>
|
||||
</span>
|
||||
</span>
|
||||
Enroll New Device
|
||||
Enroll New Device
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@ -29,10 +29,10 @@ function onRequest() {
|
||||
userModule.isAuthorized("/permission/admin/device-mgt/devices/enroll/windows");
|
||||
|
||||
// [2] checking advanced device search permissions
|
||||
permissions["ADVANCED_SEARCH"] = userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/view");
|
||||
permissions["ADVANCED_SEARCH"] = userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/view");
|
||||
|
||||
// [3] checking device viewing permission
|
||||
permissions["VIEW_DEVICES"] = userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/view");
|
||||
permissions["VIEW_DEVICES"] = userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/view");
|
||||
|
||||
var currentUser = session.get(constants["USER_SESSION_KEY"]);
|
||||
|
||||
|
||||
@ -76,8 +76,10 @@ function loadDevices() {
|
||||
return {};
|
||||
}
|
||||
|
||||
var fnCreatedRow = function (nRow) {
|
||||
var fnCreatedRow = function (nRow, aData, dataIndex) {
|
||||
$(nRow).attr('data-type', 'selectable');
|
||||
$(nRow).attr('data-deviceid', aData.deviceIdentifier);
|
||||
$(nRow).attr('data-devicetype', aData.deviceType);
|
||||
};
|
||||
|
||||
|
||||
@ -226,7 +228,7 @@ function initPage() {
|
||||
function (data) {
|
||||
if (data) {
|
||||
data = JSON.parse(data);
|
||||
if (data.devices.length > 0) {
|
||||
if (data["count"] > 0) {
|
||||
$(".bulk-action-row").removeClass('hidden');
|
||||
loadDevices();
|
||||
} else {
|
||||
|
||||
@ -273,7 +273,7 @@
|
||||
<div class="modal-footer">
|
||||
<div class="buttons">
|
||||
<a href="#" id="remove-policy-yes-link" class="btn-operations">Remove</a>
|
||||
<a href="#" id="remove-policy-cancel-link" class="btn-operations">Cancel</a>
|
||||
<a href="#" id="remove-policy-cancel-link" class="btn-operations btn-default">Cancel</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -342,7 +342,7 @@
|
||||
<div class="modal-footer">
|
||||
<div class="buttons">
|
||||
<a href="#" id="publish-policy-yes-link" class="btn-operations">Yes</a>
|
||||
<a href="#" id="publish-policy-cancel-link" class="btn-operations">No</a>
|
||||
<a href="#" id="publish-policy-cancel-link" class="btn-operations btn-default">No</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -398,7 +398,7 @@
|
||||
Yes
|
||||
</a>
|
||||
|
||||
<a href="#" id="unpublish-policy-cancel-link" class="btn-operations">
|
||||
<a href="#" id="unpublish-policy-cancel-link" class="btn-operations btn-default">
|
||||
No
|
||||
</a>
|
||||
</div>
|
||||
@ -492,7 +492,7 @@
|
||||
Yes
|
||||
</a>
|
||||
|
||||
<a href="#" id="change-policy-cancel-link" class="btn-operations">
|
||||
<a href="#" id="change-policy-cancel-link" class="btn-operations btn-default">
|
||||
No
|
||||
</a>
|
||||
</div>
|
||||
|
||||
@ -16,7 +16,7 @@
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
function onRequest(context) {
|
||||
function onRequest() {
|
||||
// var log = new Log("mdm.unit.device.operation-bar");
|
||||
var userModule = require("/app/modules/business-controllers/user.js")["userModule"];
|
||||
var viewModel = {};
|
||||
@ -24,48 +24,79 @@ function onRequest(context) {
|
||||
|
||||
// adding android operations related permission checks
|
||||
permissions["android"] = [];
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/android/ring")) {
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/operations/android/ring")) {
|
||||
permissions["android"].push("DEVICE_RING");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/android/lock-devices")) {
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/operations/android/lock")) {
|
||||
permissions["android"].push("DEVICE_LOCK");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/android/unlock-devices")) {
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/operations/android/unlock")) {
|
||||
permissions["android"].push("DEVICE_UNLOCK");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/android/location")) {
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/operations/android/location")) {
|
||||
permissions["android"].push("DEVICE_LOCATION");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/android/clear-password")) {
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/operations/android/clear-password")) {
|
||||
permissions["android"].push("CLEAR_PASSWORD");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/android/reboot")) {
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/operations/android/reboot")) {
|
||||
permissions["android"].push("DEVICE_REBOOT");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/android/upgrade-firmware")) {
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/operations/android/upgrade-firmware")) {
|
||||
permissions["android"].push("UPGRADE_FIRMWARE");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/android/mute")) {
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/operations/android/mute")) {
|
||||
permissions["android"].push("DEVICE_MUTE");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/android/send-notification")) {
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/operations/android/send-notification")) {
|
||||
permissions["android"].push("NOTIFICATION");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/android/change-lock-code")) {
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/operations/android/change-lock-code")) {
|
||||
permissions["android"].push("CHANGE_LOCK_CODE");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/android/enterprise-wipe")) {
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/operations/android/enterprise-wipe")) {
|
||||
permissions["android"].push("ENTERPRISE_WIPE");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/android/wipe")) {
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/operations/android/wipe")) {
|
||||
permissions["android"].push("WIPE_DATA");
|
||||
}
|
||||
|
||||
// adding ios operations related permission checks
|
||||
permissions["ios"] = [];
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/ios/lock")) {
|
||||
permissions["ios"].push("DEVICE_LOCK");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/ios/location")) {
|
||||
permissions["ios"].push("LOCATION");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/ios/enterprise-wipe")) {
|
||||
permissions["ios"].push("ENTERPRISE_WIPE");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/ios/notification")) {
|
||||
permissions["ios"].push("NOTIFICATION");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/ios/ring")) {
|
||||
permissions["ios"].push("RING");
|
||||
}
|
||||
|
||||
// adding windows operations related permission checks
|
||||
permissions["windows"] = [];
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/windows/lock")) {
|
||||
permissions["windows"].push("DEVICE_LOCK");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/disenroll/windows")) {
|
||||
permissions["windows"].push("DISENROLL");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/windows/wipe")) {
|
||||
permissions["windows"].push("WIPE_DATA");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/windows/ring")) {
|
||||
permissions["windows"].push("DEVICE_RING");
|
||||
}
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/operations/windows/lockreset")) {
|
||||
permissions["windows"].push("LOCK_RESET");
|
||||
}
|
||||
|
||||
viewModel["permissions"] = stringify(permissions);
|
||||
|
||||
return viewModel;
|
||||
}
|
||||
@ -235,7 +235,7 @@
|
||||
<div class="modal-footer">
|
||||
<div class="buttons">
|
||||
<a href="javascript:runOperation('{{code}}')" class="btn-operations">Yes</a>
|
||||
<a href="javascript:hidePopup()" class="btn-operations">No</a>
|
||||
<a href="javascript:hidePopup()" class="btn-operations btn-default">No</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -107,7 +107,6 @@ var operationModule = function () {
|
||||
"NOTIFICATION_OPERATION_CODE": "NOTIFICATION",
|
||||
"CALENDAR_SUBSCRIPTION_OPERATION_CODE": "CALENDAR_SUBSCRIPTION",
|
||||
"APN_OPERATION_CODE": "APN",
|
||||
"DOMAIN_CODE": "DOMAIN",
|
||||
"CELLULAR_OPERATION_CODE": "CELLULAR",
|
||||
"PER_APP_VPN_OPERATION_CODE": "PER_APP_VPN",
|
||||
"APP_TO_PER_APP_VPN_MAPPING_OPERATION_CODE": "APP_TO_PER_APP_VPN_MAPPING"
|
||||
@ -116,20 +115,10 @@ var operationModule = function () {
|
||||
publicMethods.getIOSServiceEndpoint = function (operationCode) {
|
||||
var featureMap = {
|
||||
"DEVICE_LOCK": "lock",
|
||||
"VPN": "vpn",
|
||||
"PER_APP_VPN": "per-app-vpn",
|
||||
"APP_TO_PER_APP_VPN_MAPPING": "app-to-per-app-vpn-mapping",
|
||||
"RING": "ring",
|
||||
"LOCATION": "location",
|
||||
"ENTERPRISE_WIPE": "enterprise-wipe",
|
||||
"NOTIFICATION": "notification",
|
||||
"AIR_PLAY": "airplay",
|
||||
"RESTRICTION": "restriction",
|
||||
"CELLULAR": "cellular",
|
||||
"WIFI": "wifi",
|
||||
"INSTALL_STORE_APPLICATION": "store-application",
|
||||
"INSTALL_ENTERPRISE_APPLICATION": "enterprise-application",
|
||||
"REMOVE_APPLICATION": "remove-application",
|
||||
"ENTERPRISE_WIPE": "enterprise-wipe"
|
||||
"RING": "ring"
|
||||
};
|
||||
return "/api/device-mgt/ios/v1.0/admin/devices/" + featureMap[operationCode];
|
||||
};
|
||||
@ -895,7 +884,7 @@ var operationModule = function () {
|
||||
"ALLOW_PARENT_PROFILE_APP_LINKING" : operationData["disallowParentProfileAppLinking"],
|
||||
"ENSURE_VERIFY_APPS" : operationData["ensureVerifyApps"],
|
||||
"AUTO_TIME" : operationData["enableAutoTime"],
|
||||
"SET_SCREEN_CAPTURE_DISABLED" : operationData["diableScreenCapture"],
|
||||
"SET_SCREEN_CAPTURE_DISABLED" : operationData["disableScreenCapture"],
|
||||
"SET_STATUS_BAR_DISABLED" : operationData["disableStatusBar"]
|
||||
}
|
||||
};
|
||||
@ -1016,13 +1005,21 @@ var operationModule = function () {
|
||||
break;
|
||||
case androidOperationConstants["SYSTEM_UPDATE_POLICY_CODE"]:
|
||||
operationType = operationTypeConstants["PROFILE"];
|
||||
payload = {
|
||||
"operation": {
|
||||
"type": operationData["cosuSystemUpdateType"],
|
||||
"startTime": operationData["cosuWindowStartTime"],
|
||||
"endTime": operationData["cosuWindowEndTime"]
|
||||
}
|
||||
};
|
||||
if (operationData["cosuSystemUpdatePolicyType"] != "window") {
|
||||
payload = {
|
||||
"operation": {
|
||||
"type": operationData["cosuSystemUpdatePolicyType"]
|
||||
}
|
||||
};
|
||||
} else {
|
||||
payload = {
|
||||
"operation": {
|
||||
"type": operationData["cosuSystemUpdatePolicyType"],
|
||||
"startTime": operationData["cosuSystemUpdatePolicyWindowStartTime"],
|
||||
"endTime": operationData["cosuSystemUpdatePolicyWindowEndTime"]
|
||||
}
|
||||
};
|
||||
}
|
||||
break;
|
||||
case androidOperationConstants["KIOSK_APPS_CODE"]:
|
||||
operationType = operationTypeConstants["PROFILE"];
|
||||
@ -1178,29 +1175,14 @@ var operationModule = function () {
|
||||
|
||||
publicMethods.getWindowsServiceEndpoint = function (operationCode) {
|
||||
var featureMap = {
|
||||
"CAMERA": "camera",
|
||||
"DEVICE_LOCK": "lock",
|
||||
"DEVICE_LOCATION": "location",
|
||||
"CLEAR_PASSWORD": "clear-password",
|
||||
"APPLICATION_LIST": "get-application-list",
|
||||
"DEVICE_RING": "ring-device",
|
||||
"DEVICE_REBOOT": "reboot-device",
|
||||
"UPGRADE_FIRMWARE": "upgrade-firmware",
|
||||
"DEVICE_MUTE": "mute",
|
||||
"LOCK_RESET": "lock-reset",
|
||||
"NOTIFICATION": "notification",
|
||||
"ENCRYPT_STORAGE": "encrypt",
|
||||
"CHANGE_LOCK_CODE": "change-lock-code",
|
||||
"WEBCLIP": "webclip",
|
||||
"INSTALL_APPLICATION": "install-application",
|
||||
"UNINSTALL_APPLICATION": "uninstall-application",
|
||||
"BLACKLIST_APPLICATIONS": "blacklist-applications",
|
||||
"PASSCODE_POLICY": "password-policy",
|
||||
"ENTERPRISE_WIPE": "enterprise-wipe",
|
||||
"WIPE_DATA": "wipe-data",
|
||||
"DISENROLL": "disenroll"
|
||||
"DEVICE_LOCK": "lock-devices",
|
||||
"DISENROLL": "disenroll",
|
||||
"DEVICE_RING": "ring-devices",
|
||||
"LOCK_RESET": "lock-reset-devices",
|
||||
"WIPE_DATA": "wipe-devices"
|
||||
};
|
||||
return "/mdm-windows-agent/services/windows/operation/" + featureMap[operationCode];
|
||||
//return "/mdm-windows-agent/services/windows/operation/" + featureMap[operationCode];
|
||||
return "/api/device-mgt/windows/v1.0/admin/devices/" + featureMap[operationCode];
|
||||
};
|
||||
/**
|
||||
* Get the icon for the featureCode
|
||||
@ -1233,15 +1215,10 @@ var operationModule = function () {
|
||||
publicMethods.getWindowsIconForFeature = function (operationCode) {
|
||||
var featureMap = {
|
||||
"DEVICE_LOCK": "fw-lock",
|
||||
"DEVICE_LOCATION": "fw-map-location",
|
||||
"DISENROLL": "fw-delete",
|
||||
"WIPE_DATA": "fw-clear",
|
||||
"DEVICE_RING": "fw-dial-up",
|
||||
"DEVICE_REBOOT": "fw-refresh",
|
||||
"UPGRADE_FIRMWARE": "fw-up-arrow",
|
||||
"DEVICE_MUTE": "fw-incoming-call",
|
||||
"NOTIFICATION": "fw-message",
|
||||
"LOCK_RESET": "fw-key"
|
||||
"DISENROLL": "fw-delete",
|
||||
"LOCK_RESET": "fw-key",
|
||||
"WIPE_DATA": "fw-clear"
|
||||
};
|
||||
return featureMap[operationCode];
|
||||
};
|
||||
@ -1292,14 +1269,18 @@ var operationModule = function () {
|
||||
var key = operationDataObj.data("key");
|
||||
var value;
|
||||
if (operationDataObj.is(":text") || operationDataObj.is("textarea") ||
|
||||
operationDataObj.is(":password") || operationDataObj.is(":hidden")) {
|
||||
operationDataObj.is(":password") || operationDataObj.is("input[type=hidden]")) {
|
||||
value = operationDataObj.val();
|
||||
operationData[key] = value;
|
||||
} else if (operationDataObj.is(":checkbox")) {
|
||||
value = operationDataObj.is(":checked");
|
||||
operationData[key] = value;
|
||||
} else if (operationDataObj.is(":radio") && operationDataObj.is(":checked")) {
|
||||
value = operationDataObj.val();
|
||||
value = operationDataObj.val();
|
||||
operationData[key] = value;
|
||||
} else if (operationDataObj.is("select")) {
|
||||
value = operationDataObj.find("option:selected").attr("value");
|
||||
operationData[key] = value;
|
||||
} else if (operationDataObj.hasClass("grouped-array-input")) {
|
||||
value = [];
|
||||
var childInput;
|
||||
@ -1308,7 +1289,7 @@ var operationModule = function () {
|
||||
$(".child-input", this).each(function () {
|
||||
childInput = $(this);
|
||||
if (childInput.is(":text") || childInput.is("textarea") || childInput.is(":password")
|
||||
|| childInput.is(":hidden")) {
|
||||
|| childInput.is("input[type=hidden]")) {
|
||||
childInputValue = childInput.val();
|
||||
} else if (childInput.is(":checkbox")) {
|
||||
childInputValue = childInput.is(":checked");
|
||||
@ -1335,7 +1316,7 @@ var operationModule = function () {
|
||||
$(".child-input", this).each(function () {
|
||||
childInput = $(this);
|
||||
if (childInput.is(":text") || childInput.is("textarea") || childInput.is(":password")
|
||||
|| childInput.is(":hidden")) {
|
||||
|| childInput.is("input[type=hidden]")) {
|
||||
childInputValue = childInput.val();
|
||||
} else if (childInput.is(":checkbox")) {
|
||||
childInputValue = childInput.is(":checked");
|
||||
@ -1367,7 +1348,7 @@ var operationModule = function () {
|
||||
childInput = $(this);
|
||||
childInputKey = childInput.data("child-key");
|
||||
if (childInput.is(":text") || childInput.is("textarea") || childInput.is(":password")
|
||||
|| childInput.is(":hidden")) {
|
||||
|| childInput.is("input[type=hidden]")) {
|
||||
childInputValue = childInput.val();
|
||||
} else if (childInput.is(":checkbox")) {
|
||||
childInputValue = childInput.is(":checked");
|
||||
@ -1391,8 +1372,8 @@ var operationModule = function () {
|
||||
}
|
||||
});
|
||||
}
|
||||
operationData[key] = value;
|
||||
}
|
||||
operationData[key] = value;
|
||||
}
|
||||
);
|
||||
|
||||
@ -1443,10 +1424,15 @@ var operationModule = function () {
|
||||
// populating input value according to the type of input
|
||||
if (operationDataObj.is(":text") ||
|
||||
operationDataObj.is("textarea") ||
|
||||
operationDataObj.is(":password")) {
|
||||
operationDataObj.is(":password") ||
|
||||
operationDataObj.is("input[type=hidden]")) {
|
||||
operationDataObj.val(value);
|
||||
} else if (operationDataObj.is(":checkbox")) {
|
||||
operationDataObj.prop("checked", value);
|
||||
} else if (operationDataObj.is(":radio")) {
|
||||
if (operationDataObj.val() == uiPayload[key]) {
|
||||
operationDataObj.attr("checked", true);
|
||||
}
|
||||
} else if (operationDataObj.is("select")) {
|
||||
operationDataObj.val(value);
|
||||
/* trigger a change of value, so that if slidable panes exist,
|
||||
@ -1469,9 +1455,9 @@ var operationModule = function () {
|
||||
var childInputValue = value[childInputIndex];
|
||||
// populating extracted value in the UI according to the input type
|
||||
if (childInput.is(":text") ||
|
||||
childInput.is(":hidden") ||
|
||||
childInput.is("textarea") ||
|
||||
childInput.is(":password") ||
|
||||
childInput.is("input[type=hidden]") ||
|
||||
childInput.is("select")) {
|
||||
childInput.val(childInputValue);
|
||||
} else if (childInput.is(":checkbox")) {
|
||||
@ -1517,9 +1503,9 @@ var operationModule = function () {
|
||||
}
|
||||
// populating extracted value in the UI according to the input type
|
||||
if (childInput.is(":text") ||
|
||||
childInput.is(":hidden") ||
|
||||
childInput.is("textarea") ||
|
||||
childInput.is(":password") ||
|
||||
childInput.is("input[type=hidden]") ||
|
||||
childInput.is("select")) {
|
||||
childInput.val(childInputValue);
|
||||
} else if (childInput.is(":checkbox")) {
|
||||
@ -1546,9 +1532,9 @@ var operationModule = function () {
|
||||
var childInputValue = multiColumnKeyValuePair[childInputKey];
|
||||
// populating extracted value in the UI according to the input type
|
||||
if (childInput.is(":text") ||
|
||||
childInput.is(":hidden") ||
|
||||
childInput.is("textarea") ||
|
||||
childInput.is(":password") ||
|
||||
childInput.is("input[type=hidden]") ||
|
||||
childInput.is("select")) {
|
||||
childInput.val(childInputValue);
|
||||
} else if (childInput.is(":checkbox")) {
|
||||
@ -1582,7 +1568,7 @@ var operationModule = function () {
|
||||
var payload = publicMethods.generatePayload(platformType, operationCode, null);
|
||||
|
||||
if(platformType == platformTypeConstants["ANDROID"] &&
|
||||
operationCodes[i] == androidOperationConstants["CAMERA_OPERATION_CODE"]){
|
||||
operationCodes[i] == androidOperationConstants["CAMERA_OPERATION_CODE"]){
|
||||
var operations = payload["operation"];
|
||||
for (var key in operations){
|
||||
operationCode = key;
|
||||
@ -1719,7 +1705,7 @@ var operationModule = function () {
|
||||
restrictions["enableAutoTime"] = restriction["enabled"];
|
||||
continue;
|
||||
} else if (featureCode == androidOperationConstants["SET_SCREEN_CAPTURE_DISABLED"]){
|
||||
restrictions["diableScreenCapture"] = restriction["enabled"];
|
||||
restrictions["disableScreenCapture"] = restriction["enabled"];
|
||||
continue;
|
||||
} else if (featureCode == androidOperationConstants["SET_STATUS_BAR_DISABLED"]){
|
||||
restrictions["disableStatusBar"] = restriction["enabled"];
|
||||
|
||||
@ -18,25 +18,46 @@
|
||||
{{#zone "content"}}
|
||||
<div id="qr-code-modal" data-enrollment-url="{{enrollmentURL}}" class="hidden">
|
||||
<div class="modal-header">
|
||||
<h3 class="pull-left modal-title">
|
||||
Scan QR code to start enrollment
|
||||
</h3>
|
||||
<h4 class="pull-left modal-title">
|
||||
<span class="fw-stack">
|
||||
<i class="fw fw-mobile fw-stack-2x"></i>
|
||||
<span class="fw-stack fw-move-right fw-move-bottom">
|
||||
<i class="fw fw-ring fw-stack-2x"></i>
|
||||
<i class="fw fw-circle fw-stack-2x fw-stroke text-info"></i>
|
||||
<i class="fw fw-add fw-stack-1x fw-inverse"></i>
|
||||
</span>
|
||||
</span>
|
||||
Add your new mobile device to {{@app.conf.appName}}
|
||||
</h4>
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><i class="fw fw-cancel"></i></button>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="modal-body add-margin-top-2x add-margin-bottom-2x">
|
||||
<div>
|
||||
<h4>
|
||||
Please scan the QR code using your mobile device to retrieve enrollment URL.
|
||||
</h4>
|
||||
<div class="panel-body col-centered text-center">
|
||||
<h5>
|
||||
Please scan the following QR code using your new <b>Android</b>, <b>iPhone</b> or <b>Windows</b> mobile device.
|
||||
</h5>
|
||||
<br>
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-body col-centered text-center">
|
||||
<div class="panel-body">
|
||||
<div class="qr-code"></div>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
<h5>
|
||||
Not having a QR code scanner in your device?
|
||||
<br><br>
|
||||
Try following link
|
||||
<br><br>
|
||||
<b>{{enrollmentURL}}</b>
|
||||
<br><br>
|
||||
on your device's Internet browser instead.
|
||||
</h5>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<div class="buttons">
|
||||
<a href="javascript:hidePopup()" class="btn-operations btn-default">Ok</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -14,11 +14,10 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
function onRequest(context) {
|
||||
function onRequest() {
|
||||
var mdmProps = require("/app/modules/conf-reader/main.js")["conf"];
|
||||
|
||||
var viewModel = {};
|
||||
//TODO: Move enrollment URL into app-conf.json
|
||||
viewModel.enrollmentURL = mdmProps.generalConfig.host + mdmProps.enrollmentDir;
|
||||
viewModel["enrollmentURL"] = mdmProps["generalConfig"]["host"] + mdmProps["enrollmentDir"];
|
||||
return viewModel;
|
||||
}
|
||||
@ -44,7 +44,7 @@ var InitiateViewOption = null;
|
||||
// error-callback
|
||||
function () {
|
||||
var defaultInnerHTML =
|
||||
"<br><p class='fw-warning'>Device data may not have been updated. Please refresh to try again.<p>";
|
||||
"<br><p class='small'><i class='fw-warning'></i> Device data may not have been updated. Please refresh to try again.<p>";
|
||||
$(".panel-body").append(defaultInnerHTML);
|
||||
}
|
||||
);
|
||||
|
||||
@ -57,28 +57,35 @@
|
||||
<span id="work-profile-ok" class="has-success status-icon hidden"><i class="fw fw-ok"></i></span>
|
||||
<span id="work-profile-error" class="has-error status-icon hidden"><i class="fw fw-error"></i></span>
|
||||
</a>
|
||||
<!--COSU-->
|
||||
<a href="javascript:void(0)" onclick="showAdvanceOperation('android-for-work-cosu', this)">
|
||||
<span class="wr-hidden-operation-icon fw-stack">
|
||||
<i class="fw fw-service fw-stack-2x"></i>
|
||||
</span>
|
||||
COSU Configuration
|
||||
<span id="android-for-work-cosu-configured" class="has-configured status-icon hidden"><i class="fw fw-ok"></i></span>
|
||||
<span id="android-for-work-cosu-ok" class="has-success status-icon hidden"><i class="fw fw-ok"></i></span>
|
||||
<span id="android-for-work-cosu-error" class="has-error status-icon hidden"><i class="fw fw-error"></i></span>
|
||||
</a>
|
||||
<!--/COSU-->
|
||||
<a href="javascript:void(0)" onclick="showAdvanceOperation('app-restriction', this)">
|
||||
<span class="fw-stack fw-lg">
|
||||
<i class="fw fw-application fw-stack-1x"></i>
|
||||
<i class="fw fw-block fw-stack-2x"></i>
|
||||
</span>
|
||||
<span class="fw-stack fw-lg">
|
||||
<i class="fw fw-application fw-stack-1x"></i>
|
||||
<i class="fw fw-block fw-stack-2x"></i>
|
||||
</span>
|
||||
Applications Restrictions
|
||||
<span id="app-restriction-configured" class="has-configured status-icon hidden"><i
|
||||
class="fw fw-ok"></i></span>
|
||||
<span id="app-restriction-ok" class="has-success status-icon hidden"><i class="fw fw-ok"></i></span>
|
||||
<span id="app-restriction-error" class="has-error status-icon hidden"><i class="fw fw-error"></i></span>
|
||||
</a>
|
||||
<a href="javascript:void(0)" onclick="showAdvanceOperation('cosu-system-update-policy', this)">
|
||||
<span class="wr-hidden-operation-icon fw-stack">
|
||||
<i class="fw fw-import fw-stack-2x"></i>
|
||||
</span>
|
||||
System Update Policy (COSU)
|
||||
<span id="cosu-system-update-policy-configured" class="has-configured status-icon hidden"><i class="fw fw-ok"></i></span>
|
||||
<span id="cosu-system-update-policy-ok" class="has-success status-icon hidden"><i class="fw fw-ok"></i></span>
|
||||
<span id="cosu-system-update-policy-error" class="has-error status-icon hidden"><i class="fw fw-error"></i></span>
|
||||
</a>
|
||||
<a href="javascript:void(0)" onclick="showAdvanceOperation('cosu-whitelist-applications', this)">
|
||||
<span class="wr-hidden-operations-icon fw-stack">
|
||||
<i class="fw fw-register fw-stack-2x"></i>
|
||||
</span>
|
||||
Whitelist Apps (COSU)
|
||||
<span id="cosu-whitelist-applications-configured" class="has-configured status-icon hidden"><i class="fw fw-ok"></i></span>
|
||||
<span id="cosu-whitelist-applications-ok" class="has-success status-icon hidden"><i class="fw fw-ok"></i></span>
|
||||
<span id="cosu-whitelist-applications-error" class="has-error status-icon hidden"><i class="fw fw-error"></i></span>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="wr-hidden-operations-content col-lg-8">
|
||||
@ -448,7 +455,7 @@
|
||||
<div class="wr-input-control">
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disable-screen-capture-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="diableScreenCapture"/>
|
||||
data-key="disableScreenCapture"/>
|
||||
<span class="helper" title="Having this checked would disable screen capture .">
|
||||
Disable screen capture
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
@ -865,7 +872,7 @@
|
||||
</span>
|
||||
</label>
|
||||
<input id="wifi-cacert-upload" type="file" class="form-control"
|
||||
onchange="base64EncodeFile(this, document.getElementById('wifi-cacert'), document.getElementById('wifi-cacert-name'))"/>
|
||||
onchange="base64EncodeFile(this, document.getElementById('wifi-cacert'), document.getElementById('wifi-cacert-name'))"/>
|
||||
<input id="wifi-cacert" type="hidden" class="form-control operationDataKeys"
|
||||
data-key="wifiCaCert" />
|
||||
<input id="wifi-cacert-name" type="hidden" class="form-control operationDataKeys"
|
||||
@ -886,6 +893,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<!-- /wi-fi -->
|
||||
|
||||
<!--app-restriction-->
|
||||
<div class="wr-hidden-operation" data-operation="app-restriction">
|
||||
<div class="panel panel-default operation-data" data-operation="app-restriction"
|
||||
@ -1068,113 +1076,6 @@
|
||||
</div>
|
||||
<!-- /VPN -->
|
||||
|
||||
<!-- install-applications -->
|
||||
<!--<div class="wr-hidden-operation" data-operation="install-apps">-->
|
||||
<!--<div class="panel panel-default operation-data" data-operation="INSTALL_APPLICATION">-->
|
||||
<!--<div class="panel-heading" role="tab">-->
|
||||
<!--<h2 class="sub-title panel-title">-->
|
||||
<!--<br>-->
|
||||
<!-- App Installations-->
|
||||
<!--<label class="wr-input-control switch" data-toggle="collapse" data-target="#installApp">-->
|
||||
<!--<input type="checkbox" />-->
|
||||
<!--<span class="helper"></span>-->
|
||||
<!--<span class="text"></span>-->
|
||||
<!--</label>-->
|
||||
<!--<br>-->
|
||||
<!--<br>-->
|
||||
<!--</h2>-->
|
||||
<!--</div>-->
|
||||
<!--<div id="installApp" class="panel-collapse panel-body collapse" role="tabpanel" aria-labelledby="installApp">-->
|
||||
<!--<div id="install-app-feature-error-msg" class="alert alert-danger hidden" role="alert">-->
|
||||
<!--<i class="icon fw fw-error"></i><span></span>-->
|
||||
<!--</div>-->
|
||||
<!--<label class="wr-input-label" title="Application Identifier">App Identifier<span class="wr-help-tip glyphicon glyphicon-question-sign"></span></label>-->
|
||||
|
||||
<!--<div class="wr-input-control">-->
|
||||
<!--<input type="text" class="form-control operationDataKeys" id="package-name" data-key="packageName" placeholder="Enter App Identifier"/>-->
|
||||
<!--</div>-->
|
||||
<!--<div class="wr-input-control">-->
|
||||
<!--<label class="wr-input-control dropdown">-->
|
||||
<!--<span class="helper" title="App Type">App Type<span class="wr-help-tip glyphicon glyphicon-question-sign"></span></span>-->
|
||||
<!--<select class="form-control col-sm-8 operationDataKeys appTypesInput" id="type" data-key="type">-->
|
||||
<!--<option>Public</option>-->
|
||||
<!--<option>Enterprise</option>-->
|
||||
<!--</select>-->
|
||||
<!--</label>-->
|
||||
<!--</div>-->
|
||||
<!--<label class="wr-input-label" title="URL">URL<span class="wr-help-tip glyphicon glyphicon-question-sign"></span></label>-->
|
||||
|
||||
<!--<div class="wr-input-control">-->
|
||||
<!--<input type="text" class="form-control operationDataKeys" id="url" data-key="url" placeholder="Enter URL"/>-->
|
||||
<!--</div>-->
|
||||
<!--</div>-->
|
||||
<!--</div>-->
|
||||
<!--</div>-->
|
||||
<!-- /install-applications -->
|
||||
|
||||
<!-- /uninstall-applications -->
|
||||
<!--<div class="wr-hidden-operation" data-operation="uninstall-apps">-->
|
||||
<!--<div class="panel panel-default operation-data" data-operation="UNINSTALL_APPLICATION">-->
|
||||
<!--<div class="panel-heading" role="tab">-->
|
||||
<!--<h2 class="sub-title panel-title">-->
|
||||
<!--<br>-->
|
||||
<!-- App Uninstallations-->
|
||||
<!--<label class="wr-input-control switch" data-toggle="collapse" data-target="#uninstallApp">-->
|
||||
<!--<input type="checkbox" />-->
|
||||
<!--<span class="helper"></span>-->
|
||||
<!--<span class="text"></span>-->
|
||||
<!--</label>-->
|
||||
<!--<br>-->
|
||||
<!--<br>-->
|
||||
<!--</h2>-->
|
||||
<!--</div>-->
|
||||
<!--<div id="uninstallApp" class="panel-collapse panel-body collapse" role="tabpanel" aria-labelledby="uninstallApp">-->
|
||||
<!--<div id="uninstall-app-feature-error-msg" class="alert alert-danger hidden" role="alert">-->
|
||||
<!--<i class="icon fw fw-error"></i><span></span>-->
|
||||
<!--</div>-->
|
||||
<!--<label class="wr-input-label" title="Application Identifier">App Identifier<span class="wr-help-tip glyphicon glyphicon-question-sign"></span></label>-->
|
||||
<!--<!--span>Identification of the wireless network to connect to</span-->
|
||||
<!--<div class="wr-input-control">-->
|
||||
<!--<input type="text" class="form-control operationDataKeys" id="package-name" data-key="packageName" placeholder="Enter App Identifier"/>-->
|
||||
<!--</div>-->
|
||||
<!--</div>-->
|
||||
<!--</div>-->
|
||||
<!--</div>-->
|
||||
<!-- /uninstall-applications -->
|
||||
|
||||
<!-- /web-clips -->
|
||||
<!--<div class="wr-hidden-operation" data-operation="web-clips">-->
|
||||
<!--<div class="panel panel-default operation-data" data-operation="WEBCLIP">-->
|
||||
<!--<div class="panel-heading" role="tab">-->
|
||||
<!--<h2 class="sub-title panel-title">-->
|
||||
<!--<br>-->
|
||||
<!-- Web clips-->
|
||||
<!--<label class="wr-input-control switch" data-toggle="collapse" data-target="#installWebClip">-->
|
||||
<!--<input type="checkbox" />-->
|
||||
<!--<span class="helper"></span>-->
|
||||
<!--<span class="text"></span>-->
|
||||
<!--</label>-->
|
||||
<!--<br>-->
|
||||
<!--<br>-->
|
||||
<!--</h2>-->
|
||||
<!--</div>-->
|
||||
<!--<div id="installWebClip" class="panel-collapse panel-body collapse" role="tabpanel" aria-labelledby="installWebClip">-->
|
||||
<!--<div id="install-webclip-feature-error-msg" class="alert alert-danger hidden" role="alert">-->
|
||||
<!--<i class="icon fw fw-error"></i><span></span>-->
|
||||
<!--</div>-->
|
||||
<!--<label class="wr-input-label" title="Title of the web clip">Title<span class="wr-help-tip glyphicon glyphicon-question-sign"></span></label>-->
|
||||
<!--<div class="wr-input-control">-->
|
||||
<!--<input type="text" class="form-control operationDataKeys" id="title" data-key="title" placeholder="Enter Title"/>-->
|
||||
<!--</div>-->
|
||||
<!--<label class="wr-input-label" title="URL">URL<span class="wr-help-tip glyphicon glyphicon-question-sign"></span></label>-->
|
||||
<!--<div class="wr-input-control">-->
|
||||
<!--<input type="text" class="form-control operationDataKeys" id="url" data-key="url" placeholder="Enter URL"/>-->
|
||||
<!--</div>-->
|
||||
<!--</div>-->
|
||||
<!--</div>-->
|
||||
<!--</div>-->
|
||||
<!-- /web-clips -->
|
||||
|
||||
<!--Work-profile-->
|
||||
<div class="wr-hidden-operation" data-operation="work-profile">
|
||||
<div class="panel panel-default operation-data" data-operation="work-profile"
|
||||
@ -1262,7 +1163,7 @@
|
||||
rows="4" data-key="workProfilePolicyUnhideSystemApps" placeholder=""></textarea>
|
||||
</div>
|
||||
<div class="wr-input-control">
|
||||
<label class="wr-input-label" for="passcode-policy-max-passcode-age-in-days">
|
||||
<label class="wr-input-label" for="work-profile-policy-install-playstore-apps">
|
||||
Enable Google Play Store Apps
|
||||
<span class="helper"
|
||||
title="The set of apps needed to be installed from Google Playstore to work-profile">
|
||||
@ -1279,88 +1180,91 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--android-for-work-cosu-->
|
||||
<div class="wr-hidden-operation" data-operation="android-for-work-cosu">
|
||||
<!--system-update-policy-->
|
||||
<div class="panel panel-default operation-data" data-operation="system-update-policy"
|
||||
data-operation-code="SYSTEM_UPDATE_POLICY">
|
||||
<div id="system-update-policy-heading" class="panel-heading" role="tab">
|
||||
<!-- cosu-system-update-policy -->
|
||||
<div class="wr-hidden-operation" data-operation="cosu-system-update-policy">
|
||||
<div class="panel panel-default operation-data" data-operation="cosu-system-update-policy"
|
||||
data-operation-code="SYSTEM_UPDATE_POLICY">
|
||||
<div id="cosu-system-update-policy-heading" class="panel-heading" role="tab">
|
||||
<h2 class="sub-title panel-title">
|
||||
System Update Policy
|
||||
<label id="system-update-policy-lbl" class="wr-input-control switch" data-toggle="collapse"
|
||||
data-target="#system-update-policy-body">
|
||||
System Update Policy (COSU)
|
||||
<label id="cosu-system-update-policy-lbl" class="wr-input-control switch" data-toggle="collapse"
|
||||
data-target="#cosu-system-update-policy-body">
|
||||
<input type="checkbox"/>
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to set a passcode policy to an Android Device.
|
||||
Once this configuration profile is installed on a device, corresponding users will not be
|
||||
able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
</div>
|
||||
<div id="system-update-policy-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="android-for-work-cosu-policy-body">
|
||||
|
||||
<div id="system-update-policy-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<div id="cosu-system-update-policy-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="cosu-system-update-policy-body">
|
||||
|
||||
<div id="cosu-system-update-policy-feature-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="android-for-work-cosu-policy-system-update">
|
||||
<label class="wr-input-label">
|
||||
System Update
|
||||
<span class="helper" title="Type of the System Update to be set by the Device Owner">
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
<br>
|
||||
</label>
|
||||
<br>
|
||||
<div class="wr-input-control">
|
||||
<label class="wr-input-control radio light">
|
||||
<input id="automatic-system-update-radio-btn" type="radio" name="android-for-work-cosu-policy-system-update"
|
||||
class="form-control operationDataKeys" data-key="cosuSystemUpdateType"
|
||||
value="automatic" onclick="slideDownPaneAgainstValueSetForRadioButtons(this, 'android-for-work-cosu-window-select', ['window'])" checked/>
|
||||
<span class="helper" title="Installs system update automatically as soon as one is available">
|
||||
Automatic
|
||||
</span>
|
||||
</span>
|
||||
</label>
|
||||
<label class="wr-input-control radio light">
|
||||
<input id="postpone-system-update-radio-btn" type="radio" name="android-for-work-cosu-policy-system-update"
|
||||
class="form-control operationDataKeys" data-key="cosuSystemUpdateType"
|
||||
value="postpone" onclick="slideDownPaneAgainstValueSetForRadioButtons(this, 'android-for-work-cosu-window-select', ['window'])"/>
|
||||
<span class="helper" title="Incoming system update will be blocked for a maximum of 30 days">
|
||||
Postpone
|
||||
</span>
|
||||
</label>
|
||||
<label class="wr-input-control radio light">
|
||||
<input id="window-system-update-radio-btn" type="radio" name="android-for-work-cosu-policy-system-update"
|
||||
class="form-control operationDataKeys" data-key="cosuSystemUpdateType"
|
||||
value="window" onclick="slideDownPaneAgainstValueSetForRadioButtons(this, 'android-for-work-cosu-window-select', ['window'])"/>
|
||||
<span class="helper" title="Install system update automatically within a daily maintenance window, for a maximum of 30 days">
|
||||
Window
|
||||
</span>
|
||||
</label>
|
||||
</div>
|
||||
<br><br>
|
||||
<label class="wr-input-control radio light">
|
||||
<input id="automatic-system-update-radio-btn" type="radio" name="cosu-system-update-type"
|
||||
class="form-control operationDataKeys" data-key="cosuSystemUpdatePolicyType"
|
||||
value="automatic" onclick="slideDownPaneAgainstValueSetForRadioButtons(this, 'cosu-system-update-policy-window-select', ['window'])" checked/>
|
||||
<span class="helper" title="Installs system update automatically as soon as one is available">
|
||||
Automatic
|
||||
</span>
|
||||
</label>
|
||||
<label class="wr-input-control radio light">
|
||||
<input id="postpone-system-update-radio-btn" type="radio" name="cosu-system-update-type"
|
||||
class="form-control operationDataKeys" data-key="cosuSystemUpdatePolicyType"
|
||||
value="postpone" onclick="slideDownPaneAgainstValueSetForRadioButtons(this, 'cosu-system-update-policy-window-select', ['window'])"/>
|
||||
<span class="helper" title="Incoming system update will be blocked for a maximum of 30 days">
|
||||
Postpone
|
||||
</span>
|
||||
</label>
|
||||
<label class="wr-input-control radio light">
|
||||
<input id="window-system-update-radio-btn" type="radio" name="cosu-system-update-type"
|
||||
class="form-control operationDataKeys" data-key="cosuSystemUpdatePolicyType"
|
||||
value="window" onclick="slideDownPaneAgainstValueSetForRadioButtons(this, 'cosu-system-update-policy-window-select', ['window'])"/>
|
||||
<span class="helper" title="Install system update automatically within a daily maintenance window, for a maximum of 30 days">
|
||||
Window
|
||||
</span>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
|
||||
<div id="android-for-work-cosu-window-select" class="hidden">
|
||||
<div id="cosu-system-update-policy-window-select" class="hidden">
|
||||
<div>
|
||||
<ul class="message message-info">
|
||||
<i class="icon fw fw-info"></i>
|
||||
<a id="android-for-work-cosu-window-select-msg"> Below configuration of start time and end time are valid only when
|
||||
<b>window</b> option is selected.</a>
|
||||
<a id="cosu-system-update-policy-window-select-msg">
|
||||
Below configuration of start time and end time are valid only when
|
||||
<b>window</b> option is selected.
|
||||
</a>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="wr-input-control">
|
||||
<label class="wr-input-label" for="android-for-work-cosu-window-start-time">
|
||||
<label class="wr-input-label" for="cosu-system-update-policy-window-start-time">
|
||||
Start Time
|
||||
<span class="helper" title="Window start time for system update">
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
</label>
|
||||
<select id="android-for-work-cosu-start-time" class="form-control operationDataKeys"
|
||||
data-key="cosuWindowStartTime" data-default="0">
|
||||
<option value="1440" selected="selected">
|
||||
12 AM
|
||||
</option>
|
||||
<select id="cosu-system-update-policy-window-start-time"
|
||||
class="form-control operationDataKeys"
|
||||
data-key="cosuSystemUpdatePolicyWindowStartTime" data-default="0">
|
||||
<option value="1440" selected="selected">12 AM</option>
|
||||
<option value="60">1 AM</option>
|
||||
<option value="120">2 AM</option>
|
||||
<option value="180">3 AM</option>
|
||||
@ -1387,17 +1291,16 @@
|
||||
</select>
|
||||
</div>
|
||||
<div class="wr-input-control">
|
||||
<label class="wr-input-label" for="android-for-work-cosu-window-end-time">
|
||||
Start Time
|
||||
<label class="wr-input-label" for="cosu-system-update-policy-window-end-time">
|
||||
End Time
|
||||
<span class="helper" title="Window end time for system update">
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
</label>
|
||||
<select id="android-for-work-cosu-end-time" class="form-control operationDataKeys"
|
||||
data-key="cosuWindowEndTime" data-default="0">
|
||||
<option value="1440" selected="selected">
|
||||
12 AM
|
||||
</option>
|
||||
<select id="cosu-system-update-policy-window-end-time"
|
||||
class="form-control operationDataKeys"
|
||||
data-key="cosuSystemUpdatePolicyWindowEndTime" data-default="0">
|
||||
<option value="1440" selected="selected">12 AM</option>
|
||||
<option value="60">1 AM</option>
|
||||
<option value="120">2 AM</option>
|
||||
<option value="180">3 AM</option>
|
||||
@ -1409,7 +1312,7 @@
|
||||
<option value="540">9 AM</option>
|
||||
<option value="600">10 AM</option>
|
||||
<option value="660">11 AM</option>
|
||||
<option value="720">12 noon</option>
|
||||
<option value="720">12 Noon</option>
|
||||
<option value="780">1 PM</option>
|
||||
<option value="840">2 PM</option>
|
||||
<option value="900">3 PM</option>
|
||||
@ -1424,39 +1327,49 @@
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!--system-update-policy-->
|
||||
</div>
|
||||
|
||||
<!--whitelisted-applications-->
|
||||
<div class="panel panel-default operation-data" data-operation="whitelisted-applications"
|
||||
data-operation-code="KIOSK_APPS">
|
||||
<div id="whitelisted-applications-heading" class="panel-heading" role="tab">
|
||||
<!-- cosu-whitelist-applications -->
|
||||
<div class="wr-hidden-operation" data-operation="cosu-whitelist-applications">
|
||||
<div class="panel panel-default operation-data" data-operation="cosu-whitelist-applications"
|
||||
data-operation-code="KIOSK_APPS">
|
||||
<div id="cosu-whitelist-applications-heading" class="panel-heading" role="tab">
|
||||
<h2 class="sub-title panel-title">
|
||||
Whitelisted Applications
|
||||
<label id="whitelisted-applications-lbl" class="wr-input-control switch" data-toggle="collapse"
|
||||
data-target="#whitelisted-applications-body">
|
||||
Whitelist Applications (COSU)
|
||||
<label id="cosu-whitelist-applications-lbl" class="wr-input-control switch" data-toggle="collapse"
|
||||
data-target="#cosu-whitelist-applications-body">
|
||||
<input type="checkbox"/>
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to set a passcode policy to an Android Device.
|
||||
Once this configuration profile is installed on a device, corresponding users will not be
|
||||
able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
</div>
|
||||
<div id="whitelisted-applications-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="whitelisted-applications-body">
|
||||
|
||||
<div id="whitelisted-applications-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<div id="cosu-whitelist-applications-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="cosu-whitelist-applications-body">
|
||||
|
||||
<div id="cosu-whitelist-applications-feature-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="whitelisted-application">
|
||||
<br><br>Whitelisted Application List to enter Lock Task Mode
|
||||
<span class="helper" title="Add an application to whitelist.">
|
||||
<label class="wr-input-label" for="cosu-whitelisted-applications">
|
||||
Whitelisted Applications to enter Lock Task Mode
|
||||
<span class="helper" title="Configuration information specific to a given third-party VPN solution. This has to be input as key/value pairs.">
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
</span>
|
||||
<br>
|
||||
<a href="#whitelisted-applications-grid" class="grid-input-add" data-click-event="add-form">
|
||||
<a href="#cosu-whitelisted-applications-grid" class="grid-input-add" data-click-event="add-form">
|
||||
<span class="icon fw-stack">
|
||||
<i class="fw fw-add fw-stack-1x"></i>
|
||||
<i class="fw fw-ring fw-stack-2x"></i>
|
||||
@ -1465,44 +1378,43 @@
|
||||
Add Application
|
||||
</a>
|
||||
</label>
|
||||
<div id="whitelisted-applications"
|
||||
class="operationDataKeys grouped-array-input multi-column-key-value-pair-array"
|
||||
data-key="cosuWhitelistedApplications" data-column-count="2">
|
||||
<div id="cosu-whitelisted-applications"
|
||||
class="operationDataKeys grouped-array-input multi-column-key-value-pair-array"
|
||||
data-key="cosuWhitelistedApplications" data-column-count="2">
|
||||
<table class="table table-responsive table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>No:</th>
|
||||
<th>Application Name/Description</th>
|
||||
<th>Package Name</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>No:</th>
|
||||
<th>Application Name / Description</th>
|
||||
<th>Package Name</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody data-add-form-container="#whitelisted-applications-grid">
|
||||
<tr data-help-text="add-form">
|
||||
<td colspan="4">
|
||||
No entries added yet.
|
||||
</td>
|
||||
</tr>
|
||||
<tbody data-add-form-container="#cosu-whitelisted-applications-grid">
|
||||
<tr data-help-text="add-form">
|
||||
<td colspan="4">
|
||||
No entries added yet .
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<table class="template hidden">
|
||||
<tbody data-add-form="#whitelisted-applications-grid">
|
||||
<tr data-add-form-element="clone">
|
||||
<td data-title="No:">
|
||||
<span class="index"></span>
|
||||
</td>
|
||||
<td data-title="App Name">
|
||||
<input type="text" class="form-control grid-input-text" data-child-key="appName"
|
||||
maxlength="100" data-default="" placeholder="[ Gmail ]"/>
|
||||
</td>
|
||||
<td data-title="Package Name">
|
||||
<input type="text" class="form-control grid-input-text"
|
||||
data-child-key="packageName" maxlength="100" data-default=""
|
||||
placeholder="[ com.google.android.gm ]"/>
|
||||
</td>
|
||||
<td>
|
||||
<tbody data-add-form="#cosu-whitelisted-applications-grid">
|
||||
<tr data-add-form-element="clone">
|
||||
<td data-title="No:">
|
||||
<span class="index"></span>
|
||||
</td>
|
||||
<td data-title="Application Name / Description">
|
||||
<input type="text" class="form-control grid-input-text" data-child-key="appName"
|
||||
maxlength="100" data-default="" placeholder="[ Application Name / Description ]"/>
|
||||
</td>
|
||||
<td data-title="Package Name">
|
||||
<input type="text" class="form-control grid-input-text" data-child-key="packageName"
|
||||
maxlength="100" data-default="" placeholder="[ Package Name ]"/>
|
||||
</td>
|
||||
<td>
|
||||
<span class="list-group-item-actions">
|
||||
<a href="#whitelisted-applications-grid" class="grid-input-remove"
|
||||
<a href="#cosu-whitelisted-applications-grid" class="grid-input-remove"
|
||||
data-click-event="remove-form">
|
||||
<span class="fw-stack helper" title="Remove Entry">
|
||||
<i class="fw fw-ring fw-stack-2x"></i>
|
||||
@ -1510,18 +1422,14 @@
|
||||
</span>
|
||||
</a>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!--/whitelisted-applications-->
|
||||
</div>
|
||||
<!--/android-for-work-cosu-->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@ -175,18 +175,17 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to set a passcode policy to an iOS Device.
|
||||
Once this configuration profile is installed on a device, corresponding users
|
||||
will not be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to set a passcode policy to an iOS Device.
|
||||
Once this configuration profile is installed on a device, corresponding users
|
||||
will not be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</div>
|
||||
<div id="passcode-policy-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="passcode-policy-body">
|
||||
|
||||
<hr/>
|
||||
<div id="passcode-policy-feature-error-msg" class="alert alert-danger hidden"
|
||||
role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
@ -396,17 +395,17 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configurations can be used to configure VPN settings on an iOS device.
|
||||
Once this configuration profile is installed on a device, corresponding users will not
|
||||
be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configurations can be used to configure VPN settings on an iOS device.
|
||||
Once this configuration profile is installed on a device, corresponding users will not
|
||||
be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</div>
|
||||
<div id="vpn-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="vpn-body">
|
||||
<hr/>
|
||||
Please note that * sign represents required fields of data.
|
||||
<br>
|
||||
<br>
|
||||
@ -1200,18 +1199,18 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to configure add-on VPN software (per-app VPN),
|
||||
and it works only on VPN services of
|
||||
type 'VPN'. Once this configuration profile is installed on a device,
|
||||
corresponding users will not be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to configure add-on VPN software (per-app VPN),
|
||||
and it works only on VPN services of
|
||||
type 'VPN'. Once this configuration profile is installed on a device,
|
||||
corresponding users will not be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</div>
|
||||
<div id="per-app-vpn-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="per-app-vpn-body">
|
||||
<hr/>
|
||||
Please note that * sign represents required fields of data.
|
||||
<br>
|
||||
<br>
|
||||
@ -1319,16 +1318,16 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to configure app-to-per-app VPN mappings.
|
||||
Once this configuration profile is installed on a device, corresponding users will not be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to configure app-to-per-app VPN mappings.
|
||||
Once this configuration profile is installed on a device, corresponding users will not be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</div>
|
||||
<div id="app-to-per-app-vpn-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="app-to-per-app-vpn-body">
|
||||
<hr/>
|
||||
Please note that * sign represents required fields of data.
|
||||
<br>
|
||||
<br>
|
||||
@ -1418,18 +1417,18 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
These configurations can be used to set how devices connect to your wireless network(s),
|
||||
including the necessary authentication
|
||||
information. Once this configuration profile is installed on an iOS device,
|
||||
corresponding users will not be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
These configurations can be used to set how devices connect to your wireless network(s),
|
||||
including the necessary authentication
|
||||
information. Once this configuration profile is installed on an iOS device,
|
||||
corresponding users will not be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</div>
|
||||
<div id="wifi-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="wifi-body">
|
||||
<hr/>
|
||||
<div id="wifi-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
@ -2281,18 +2280,17 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
These configurations can be used to define settings for connecting
|
||||
to your POP or IMAP email accounts.
|
||||
Once this configuration profile is installed on an iOS device,
|
||||
corresponding users will not be able to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
These configurations can be used to define settings for connecting
|
||||
to your POP or IMAP email accounts.
|
||||
Once this configuration profile is installed on an iOS device,
|
||||
corresponding users will not be able to modify these settings on their devices.
|
||||
</div>
|
||||
</div>
|
||||
<div id="email-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="email-body">
|
||||
|
||||
<hr/>
|
||||
<div id="email-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
@ -2648,19 +2646,18 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to define settings for connecting to AirPlay
|
||||
destinations.
|
||||
Once this configuration profile is installed on an iOS device,
|
||||
corresponding users will not be able to modify these settings on their devices.
|
||||
<br><br>(This feature is supported only on iOS 7.0 and later.)
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to define settings for connecting to AirPlay
|
||||
destinations.
|
||||
Once this configuration profile is installed on an iOS device,
|
||||
corresponding users will not be able to modify these settings on their devices.
|
||||
<br><br>(This feature is supported only on iOS 7.0 and later.)
|
||||
</div>
|
||||
</div>
|
||||
<div id="airplay-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="airplay-body">
|
||||
|
||||
<hr/>
|
||||
<div id="airplay-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
@ -2828,15 +2825,14 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr/>
|
||||
<div class="panel-title-description">
|
||||
This payload defines web domains that are under an enterprise’s management.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This payload defines web domains that are under an enterprise’s management.
|
||||
</div>
|
||||
</div>
|
||||
<div id="domain-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="domain-body">
|
||||
|
||||
<hr/>
|
||||
<div id="DOMAIN-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
@ -2990,18 +2986,17 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to define settings for connecting to LDAP
|
||||
servers.
|
||||
Once this configuration profile is installed on an iOS device,
|
||||
corresponding users will not be able to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to define settings for connecting to LDAP
|
||||
servers.
|
||||
Once this configuration profile is installed on an iOS device,
|
||||
corresponding users will not be able to modify these settings on their devices.
|
||||
</div>
|
||||
</div>
|
||||
<div id="ldap-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="ldap-body">
|
||||
|
||||
<hr/>
|
||||
<div id="ldap-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
@ -3176,18 +3171,17 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to define settings for connecting to CalDAV
|
||||
servers.
|
||||
Once this configuration profile is installed on an iOS device,
|
||||
corresponding users will not be able to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to define settings for connecting to CalDAV
|
||||
servers.
|
||||
Once this configuration profile is installed on an iOS device,
|
||||
corresponding users will not be able to modify these settings on their devices.
|
||||
</div>
|
||||
</div>
|
||||
<div id="calendar-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="calendar-body">
|
||||
|
||||
<hr/>
|
||||
<div id="calendar-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
@ -3301,17 +3295,16 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to define settings for calendar subscriptions.
|
||||
Once this configuration profile is installed on an iOS device,
|
||||
corresponding users will not be able to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to define settings for calendar subscriptions.
|
||||
Once this configuration profile is installed on an iOS device,
|
||||
corresponding users will not be able to modify these settings on their devices.
|
||||
</div>
|
||||
</div>
|
||||
<div id="calendar-subscription-body" class="panel-collapse panel-body collapse"
|
||||
role="tabpanel" aria-labelledby="calendar-subscription-body">
|
||||
|
||||
<hr/>
|
||||
<div id="calendar-subscription-feature-error-msg" class="alert alert-danger hidden"
|
||||
role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
@ -3400,19 +3393,18 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
These configurations can be used to specify Access Point Names ( APN ).
|
||||
Once this configuration profile is installed on an iOS device, corresponding
|
||||
users will not
|
||||
be able to modify these settings on their devices.
|
||||
<br><br>(This feature is not supported on iOS 7.0 and later.)
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
These configurations can be used to specify Access Point Names ( APN ).
|
||||
Once this configuration profile is installed on an iOS device, corresponding
|
||||
users will not
|
||||
be able to modify these settings on their devices.
|
||||
<br><br>(This feature is not supported on iOS 7.0 and later.)
|
||||
</div>
|
||||
</div>
|
||||
<div id="apn-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="apn-body">
|
||||
|
||||
<hr/>
|
||||
<div id="apn-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
@ -3527,21 +3519,20 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
These configurations can be used to specify Cellular Network Settings on an iOS
|
||||
device.
|
||||
Cellular settings cannot be installed if an APN setting is already installed and
|
||||
upon successful installation, corresponding users will not be able to modify
|
||||
these
|
||||
settings on their devices.
|
||||
<br><br>(This feature is supported only on iOS 7.0 and later.)
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
These configurations can be used to specify Cellular Network Settings on an iOS
|
||||
device.
|
||||
Cellular settings cannot be installed if an APN setting is already installed and
|
||||
upon successful installation, corresponding users will not be able to modify
|
||||
these
|
||||
settings on their devices.
|
||||
<br><br>(This feature is supported only on iOS 7.0 and later.)
|
||||
</div>
|
||||
</div>
|
||||
<div id="cellular-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="cellular-body">
|
||||
|
||||
<hr/>
|
||||
<div id="cellular-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
@ -3713,18 +3704,17 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
These configurations can be used to restrict apps, device features and
|
||||
media content available on an iOS device. Once this configuration profile is installed
|
||||
on a device, corresponding users will not be able to modify these settings on their
|
||||
devices.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
These configurations can be used to restrict apps, device features and
|
||||
media content available on an iOS device. Once this configuration profile is installed
|
||||
on a device, corresponding users will not be able to modify these settings on their
|
||||
devices.
|
||||
</div>
|
||||
</div>
|
||||
<div id="restrictions-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="restrictions-body">
|
||||
|
||||
<hr/>
|
||||
<div id="restrictions-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
@ -4768,16 +4758,15 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to create a black list or white list of
|
||||
applications.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to create a black list or white list of
|
||||
applications.
|
||||
</div>
|
||||
</div>
|
||||
<div id="app-restriction-body" class="panel-collapse panel-body collapse" role="tabpanel"
|
||||
aria-labelledby="app-restriction-body">
|
||||
|
||||
<hr/>
|
||||
<div id="app-restriction-feature-error-msg" class="alert alert-danger hidden"
|
||||
role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
|
||||
@ -3,8 +3,7 @@
|
||||
<a href="javascript:void(0)" onclick="showAdvanceOperation('passcode-policy', this)" class="selected">
|
||||
<span class="wr-hidden-operations-icon fw-stack">
|
||||
<i class="fw fw-key fw-stack-2x"></i>
|
||||
</span>
|
||||
Passcode Policy
|
||||
</span>Passcode Policy
|
||||
<span id="passcode-policy-configured" class="has-configured status-icon hidden"><i class="fw fw-ok"></i></span>
|
||||
<span id="passcode-policy-ok" class="has-success status-icon hidden"><i class="fw fw-ok"></i></span>
|
||||
<span id="passcode-policy-error" class="has-error status-icon hidden"><i class="fw fw-error"></i></span>
|
||||
@ -78,16 +77,16 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to set a passcode policy to an Windows Device.
|
||||
Once this configuration profile is installed on a device, corresponding users will not be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to set a passcode policy to an Windows Device.
|
||||
Once this configuration profile is installed on a device, corresponding users will not be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div id="passcode-policy-body" class="panel-collapse panel-body collapse" role="tabpanel" aria-labelledby="passcode-policy-body">
|
||||
|
||||
<hr/>
|
||||
<div id="passcode-policy-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
@ -221,15 +220,15 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to restrict the usage of camera on an Windows device together with all the applications using the camera.
|
||||
Once this configuration profile is installed on a device, corresponding users will not be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to restrict the usage of camera on an Windows device together with all the applications using the camera.
|
||||
Once this configuration profile is installed on a device, corresponding users will not be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</div>
|
||||
<div id="camera-body" class="panel-collapse panel-body collapse" role="tabpanel" aria-labelledby="camera-body">
|
||||
<hr/>
|
||||
<div id="camera-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
@ -262,15 +261,15 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to encrypt data on an Windows device, when the device is locked and
|
||||
make it readable when the passcode is entered. Once this configuration profile is installed on a device,
|
||||
corresponding users will not be able to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to encrypt data on an Windows device, when the device is locked and
|
||||
make it readable when the passcode is entered. Once this configuration profile is installed on a device,
|
||||
corresponding users will not be able to modify these settings on their devices.
|
||||
</div>
|
||||
</div>
|
||||
<div id="encrypt-storage-body" class="panel-collapse panel-body collapse" role="tabpanel" aria-labelledby="encrypt-storage-body">
|
||||
<hr/>
|
||||
<div id="encrypt-storage-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
@ -302,14 +301,13 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to create a black list or white list of applications.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to create a black list or white list of applications.
|
||||
</div>
|
||||
</div>
|
||||
<div id="app-restriction-body" class="panel-collapse panel-body collapse" role="tabpanel" aria-labelledby="app-restriction-body">
|
||||
|
||||
<hr/>
|
||||
<div id="app-restriction-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
|
||||
@ -2219,6 +2219,24 @@ var slideDownPaneAgainstValueSet = function (selectElement, paneID, valueSet) {
|
||||
);
|
||||
}
|
||||
};
|
||||
|
||||
var slideDownPaneAgainstValueSetForRadioButtons = function (selectElement, paneID, valueSet) {
|
||||
var selectedValueOnChange = selectElement.value;
|
||||
|
||||
var i, slideDownVotes = 0;
|
||||
for (i = 0; i < valueSet.length; i++) {
|
||||
if (selectedValueOnChange == valueSet[i]) {
|
||||
slideDownVotes++;
|
||||
}
|
||||
}
|
||||
|
||||
var paneSelector = "#" + paneID;
|
||||
if(slideDownVotes > 0) {
|
||||
$(paneSelector).removeClass("hidden");
|
||||
} else {
|
||||
$(paneSelector).addClass("hidden");
|
||||
}
|
||||
};
|
||||
// End of HTML embedded invoke methods
|
||||
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -78,16 +78,15 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to set a passcode policy to an Windows Device.
|
||||
Once this configuration profile is installed on a device, corresponding users will not be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to set a passcode policy to an Windows Device.
|
||||
Once this configuration profile is installed on a device, corresponding users will not be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</div>
|
||||
<div id="passcode-policy-body" class="panel-collapse panel-body collapse" role="tabpanel" aria-labelledby="passcode-policy-body">
|
||||
|
||||
<hr/>
|
||||
<div id="passcode-policy-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
@ -221,15 +220,15 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to restrict the usage of camera on an Windows device together with all the applications using the camera.
|
||||
Once this configuration profile is installed on a device, corresponding users will not be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to restrict the usage of camera on an Windows device together with all the applications using the camera.
|
||||
Once this configuration profile is installed on a device, corresponding users will not be able
|
||||
to modify these settings on their devices.
|
||||
</div>
|
||||
</div>
|
||||
<div id="camera-body" class="panel-collapse panel-body collapse" role="tabpanel" aria-labelledby="camera-body">
|
||||
<hr/>
|
||||
<div id="camera-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
@ -262,15 +261,15 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to encrypt data on an Windows device, when the device is locked and
|
||||
make it readable when the passcode is entered. Once this configuration profile is installed on a device,
|
||||
corresponding users will not be able to modify these settings on their devices.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to encrypt data on an Windows device, when the device is locked and
|
||||
make it readable when the passcode is entered. Once this configuration profile is installed on a device,
|
||||
corresponding users will not be able to modify these settings on their devices.
|
||||
</div>
|
||||
</div>
|
||||
<div id="encrypt-storage-body" class="panel-collapse panel-body collapse" role="tabpanel" aria-labelledby="encrypt-storage-body">
|
||||
<hr/>
|
||||
<div id="encrypt-storage-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
@ -303,14 +302,13 @@
|
||||
<span class="helper"></span>
|
||||
<span class="text"></span>
|
||||
</label>
|
||||
<hr>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to create a black list or white list of applications.
|
||||
</div>
|
||||
</h2>
|
||||
<div class="panel-title-description">
|
||||
This configuration can be used to create a black list or white list of applications.
|
||||
</div>
|
||||
</div>
|
||||
<div id="app-restriction-body" class="panel-collapse panel-body collapse" role="tabpanel" aria-labelledby="app-restriction-body">
|
||||
|
||||
<hr/>
|
||||
<div id="app-restriction-feature-error-msg" class="alert alert-danger hidden" role="alert">
|
||||
<i class="icon fw fw-error"></i><span></span>
|
||||
</div>
|
||||
|
||||
@ -633,7 +633,7 @@
|
||||
<div class="wr-input-control">
|
||||
<label class="wr-input-control checkbox">
|
||||
<input id="disable-screen-capture-enabled" type="checkbox" class="operationDataKeys"
|
||||
data-key="diableScreenCapture"/>
|
||||
data-key="disableScreenCapture"/>
|
||||
<span class="helper" title="Having this checked would disable screen capture .">
|
||||
Disable screen capture
|
||||
<span class="wr-help-tip glyphicon glyphicon-question-sign"></span>
|
||||
|
||||
@ -22,15 +22,16 @@
|
||||
{{/zone}}
|
||||
|
||||
{{#zone "navMenu-items"}}
|
||||
<li>
|
||||
<a href="{{@app.context}}">
|
||||
<i class="fw fw-dashboard"></i>
|
||||
Admin Dashboard
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="{{@app.context}}">
|
||||
<i class="fw fw-dashboard"></i>
|
||||
Resource Dashboard
|
||||
</a>
|
||||
</li>
|
||||
|
||||
{{#if permissions.LIST_DEVICES}}
|
||||
<li>
|
||||
<!--suppress HtmlUnknownTarget -->
|
||||
<a href="{{@app.context}}/devices">
|
||||
<i class="fw fw-mobile"></i>
|
||||
Device Management
|
||||
@ -38,33 +39,41 @@
|
||||
</li>
|
||||
{{/if}}
|
||||
|
||||
<li><a><i class="fw fw-user"></i>User Management</a>
|
||||
<ul>
|
||||
{{#if permissions.LIST_USERS}}
|
||||
<li><a href="{{@app.context}}/users"><i class="fw fw-user"></i>Users</a></li>
|
||||
{{/if}}
|
||||
|
||||
{{#if permissions.LIST_ROLES}}
|
||||
<li><a href="{{@app.context}}/roles"><i class="fw fw-bookmark"></i>Roles</a></li>
|
||||
{{/if}}
|
||||
</ul>
|
||||
</li>
|
||||
{{#if permissions.LIST_POLICIES}}
|
||||
<li><a href="{{@app.context}}/policies"><i class="fw fw-policy"></i>Policy Management</a></li>
|
||||
{{#if permissions.USER_MGT_PERMITTED}}
|
||||
<li><a><i class="fw fw-user"></i>User Management</a>
|
||||
<ul>
|
||||
{{#if permissions.LIST_USERS}}
|
||||
<li><!--suppress HtmlUnknownTarget -->
|
||||
<a href="{{@app.context}}/users"><i class="fw fw-user"></i>Users</a></li>
|
||||
{{/if}}
|
||||
{{#if permissions.LIST_ROLES}}
|
||||
<li><!--suppress HtmlUnknownTarget -->
|
||||
<a href="{{@app.context}}/roles"><i class="fw fw-bookmark"></i>Roles</a></li>
|
||||
{{/if}}
|
||||
</ul>
|
||||
</li>
|
||||
{{/if}}
|
||||
{{#if permissions.LIST_POLICIES}}
|
||||
<li><!--suppress HtmlUnknownTarget -->
|
||||
<a href="{{@app.context}}/policies"><i class="fw fw-policy"></i>Policy Management</a></li>
|
||||
{{/if}}
|
||||
{{#if permissions.CONFIG_MGT_PERMITTED}}
|
||||
<li><a><i class="fw fw-settings"></i>Configuration Management</a>
|
||||
<ul>
|
||||
{{#if permissions.LIST_PLATFORM_CONFIGURATIONS}}
|
||||
<li><!--suppress HtmlUnknownTarget -->
|
||||
<a href="{{@app.context}}/platform-configuration"><i class="fw fw-service"></i>Platform Configurations</a>
|
||||
</li>
|
||||
{{/if}}
|
||||
<!-- todo change the permission and get the related permission -->
|
||||
{{#if permissions.LIST_CERTIFICATES}}
|
||||
<li><!--suppress HtmlUnknownTarget -->
|
||||
<a href="{{@app.context}}/certificates"><i class="fw fw-security-policy"></i>Certificate Configurations</a>
|
||||
</li>
|
||||
{{/if}}
|
||||
</ul>
|
||||
</li>
|
||||
{{/if}}
|
||||
<li><a><i class="fw fw-settings"></i>Configuration Management</a>
|
||||
<ul>
|
||||
{{#if permissions.LIST_CONFIGURATION}}
|
||||
<li><a href="{{@app.context}}/platform-configuration"><i class="fw fw-service"></i>Platform Configurations</a>
|
||||
</li>
|
||||
{{/if}}
|
||||
<!-- todo change the permission and get the related permission -->
|
||||
{{#if permissions.LIST_CONFIGURATION}}
|
||||
<li><a href="{{@app.context}}/certificates"><i class="fw fw-security-policy"></i>Certificate Configurations</a>
|
||||
</li>
|
||||
{{/if}}
|
||||
</ul>
|
||||
</li>
|
||||
{{/zone}}
|
||||
|
||||
{{#zone "navbarCollapsableRightItems"}}
|
||||
@ -83,6 +92,7 @@
|
||||
</ul>
|
||||
{{/zone}}
|
||||
{{#zone "sidePanes"}}
|
||||
<!--suppress HtmlUnknownAttribute -->
|
||||
<div class="sidebar-wrapper" id="right-sidebar" is-authorized="{{permissions.LIST_NOTIFICATIONS}}"
|
||||
data-side="right" data-width="320" data-sidebar-fixed="true" data-fixed-offset="50" data-spy="affix"
|
||||
data-offset-top="80">
|
||||
@ -92,6 +102,7 @@
|
||||
</div>
|
||||
{{/zone}}
|
||||
{{#zone "bottomJs"}}
|
||||
<!--suppress HtmlUnknownTarget -->
|
||||
<script id="notifications" data-current-user="{{currentUser.username}}"
|
||||
data-image-resource="{{@unit.publicUri}}/images/" src="{{@unit.publicUri}}/templates/notifications.hbs"
|
||||
type="text/x-handlebars-template"></script>
|
||||
|
||||
@ -43,16 +43,20 @@ function onRequest(context) {
|
||||
// eg: {{unit "appbar" pageLink="users" title="User Management"}}
|
||||
viewModel["currentActions"] = links[viewModel["pageLink"]];
|
||||
viewModel["enrollmentURL"] = mdmProps["generalConfig"]["host"] + mdmProps["enrollmentDir"];
|
||||
var currentUser = session.get(constants["USER_SESSION_KEY"]);
|
||||
viewModel["currentUser"] = session.get(constants["USER_SESSION_KEY"]);
|
||||
|
||||
var permissions = {};
|
||||
permissions.LIST_DEVICES = userModule.isAuthorized("/permission/admin/device-mgt/devices/owning/view");
|
||||
permissions.LIST_POLICIES = userModule.isAuthorized("/permission/admin/device-mgt/policies/view");
|
||||
permissions.LIST_ROLES = userModule.isAuthorized("/permission/admin/device-mgt/roles/view");
|
||||
permissions.LIST_USERS = userModule.isAuthorized("/permission/admin/device-mgt/users/view");
|
||||
permissions.LIST_NOTIFICATIONS = userModule.isAuthorized("/permission/admin/device-mgt/notifications/view");
|
||||
permissions.LIST_CONFIGURATION = userModule.isAuthorized("/permission/admin/device-mgt/configurations/view");
|
||||
viewModel.permissions = permissions;
|
||||
viewModel["currentUser"] = currentUser;
|
||||
permissions["LIST_DEVICES"] = userModule.isAuthorized("/permission/admin/device-mgt/devices/owning-device/view");
|
||||
permissions["LIST_POLICIES"] = userModule.isAuthorized("/permission/admin/device-mgt/policies/view");
|
||||
permissions["LIST_USERS"] = userModule.isAuthorized("/permission/admin/device-mgt/users/view");
|
||||
permissions["LIST_ROLES"] = userModule.isAuthorized("/permission/admin/device-mgt/roles/view");
|
||||
permissions["USER_MGT_PERMITTED"] = (permissions["LIST_USERS"] || permissions["LIST_ROLES"]);
|
||||
permissions["LIST_PLATFORM_CONFIGURATIONS"] = userModule.isAuthorized("/permission/admin/device-mgt/platform-configurations/view");
|
||||
permissions["LIST_CERTIFICATES"] = userModule.isAuthorized("/permission/admin/device-mgt/certificates/view");
|
||||
permissions["CONFIG_MGT_PERMITTED"] = (permissions["LIST_PLATFORM_CONFIGURATIONS"] || permissions["LIST_CERTIFICATES"]);
|
||||
permissions["LIST_NOTIFICATIONS"] = userModule.isAuthorized("/permission/admin/device-mgt/notifications/view");
|
||||
|
||||
viewModel["permissions"] = permissions;
|
||||
viewModel["appContext"] = mdmProps["appContext"];
|
||||
|
||||
return viewModel;
|
||||
|
||||
@ -5,8 +5,8 @@
|
||||
<a href="{{../appContext}}/device/{{deviceType}}?id={{deviceIdentifier}}#event_log_tab"
|
||||
data-id="{{operationId}}"
|
||||
data-url="device/{{deviceType}}?id={{deviceIdentifier}}#event_log_tab"
|
||||
class="new-notification" data-click-event="remove-form">
|
||||
{{deviceType}}
|
||||
class="new-notification text-capitalize" data-click-event="remove-form">
|
||||
{{deviceType}} {{deviceName}}
|
||||
</a>
|
||||
</h4>
|
||||
<p>{{description}}</p>
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
@base-dark-color: #11375B;
|
||||
@base-light-color: #ffffff;
|
||||
@base-success-color: #5cb85c;
|
||||
@base-info-color: #009DA7;
|
||||
@base-info-color: #526A84;
|
||||
@base-warning-color: #f0ad4e;
|
||||
@base-danger-color: #d9534f;
|
||||
|
||||
|
||||
@ -45,12 +45,6 @@ import javax.ws.rs.core.Response;
|
||||
@Consumes({"application/json", "application/xml"})
|
||||
public interface ConfigurationMgtService {
|
||||
|
||||
/**
|
||||
* Retrieve Tenant configurations according to the device type.
|
||||
*
|
||||
* @return Tenant configuration object contains specific tenant configurations.
|
||||
* @throws WindowsConfigurationException
|
||||
*/
|
||||
@GET
|
||||
@ApiOperation(
|
||||
produces = MediaType.APPLICATION_JSON,
|
||||
@ -91,7 +85,7 @@ public interface ConfigurationMgtService {
|
||||
code = 500,
|
||||
message = "Internal Server Error. \n Server error occurred while fetching Windows platform configuration.")
|
||||
})
|
||||
@Permission(name = "View Configurations", permission = "/device-mgt/configurations/view")
|
||||
@Permission(name = "View Configurations", permission = "/device-mgt/platform-configurations/view")
|
||||
PlatformConfiguration getConfiguration() throws WindowsConfigurationException;
|
||||
|
||||
/**
|
||||
|
||||
@ -49,7 +49,7 @@ public interface DeviceManagementAdminService {
|
||||
|
||||
@POST
|
||||
@Path("/lock-devices")
|
||||
@Permission(name = "Lock Device", permission = "/device-mgt/devices/owning/operations/windows/lock")
|
||||
@Permission(name = "Lock Device", permission = "/device-mgt/devices/owning-device/operations/windows/lock")
|
||||
Response lock(@HeaderParam("Accept") String headerParam, List<String> deviceIds) throws
|
||||
WindowsDeviceEnrolmentException;
|
||||
|
||||
@ -61,19 +61,19 @@ public interface DeviceManagementAdminService {
|
||||
|
||||
@POST
|
||||
@Path("/wipe-devices")
|
||||
@Permission(name = "Wipe Device", permission = "/device-mgt/devices/owning/operations/windows/wipe")
|
||||
@Permission(name = "Wipe Device", permission = "/device-mgt/devices/owning-device/operations/windows/wipe")
|
||||
Response wipe(@HeaderParam("Accept") String headerParam, List<String> deviceIds) throws
|
||||
WindowsDeviceEnrolmentException;
|
||||
|
||||
@POST
|
||||
@Path("/ring-devices")
|
||||
@Permission(name = "Ring Device", permission = "/device-mgt/devices/owning/operations/windows/ring")
|
||||
@Permission(name = "Ring Device", permission = "/device-mgt/devices/owning-device/operations/windows/ring")
|
||||
Response ring(@HeaderParam("Accept") String headerParam, List<String> deviceIds) throws
|
||||
WindowsDeviceEnrolmentException;
|
||||
|
||||
@POST
|
||||
@Path("/lockreset-devices")
|
||||
@Permission(name = "Lock-Reset Device", permission = "/device-mgt/devices/owning/operations/windows/lockreset")
|
||||
@Path("/lock-reset-devices")
|
||||
@Permission(name = "Lock-Reset Device", permission = "/device-mgt/devices/owning-device/operations/windows/lock-reset")
|
||||
Response lockReset(@HeaderParam("Accept") String acceptHeader, List<String> deviceIds)
|
||||
throws WindowsDeviceEnrolmentException;
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user