Merge pull request #457 from madawas/IOTS-296

Refactoring policy create/edit js
4.x.x
Malintha 8 years ago committed by GitHub
commit cba92545f3

@ -125,6 +125,11 @@ $("#policy-name-input").focus(function(){
validateInline["policy-name"](); validateInline["policy-name"]();
}); });
/**
* Forward action of device type selection step. Loads relevant policy profile configurations.
*
* @param actionButton
*/
stepForwardFrom["policy-platform"] = function (actionButton) { stepForwardFrom["policy-platform"] = function (actionButton) {
$("#device-type-policy-operations").html("").addClass("hidden"); $("#device-type-policy-operations").html("").addClass("hidden");
$("#generic-policy-operations").addClass("hidden"); $("#generic-policy-operations").addClass("hidden");
@ -175,17 +180,26 @@ stepForwardFrom["policy-platform"] = function (actionButton) {
}); });
}; };
/**
* Forward action of policy profile page. Generates policy profile payload.
*/
stepForwardFrom["policy-profile"] = function () { stepForwardFrom["policy-profile"] = function () {
policy["profile"] = operationModule.generateProfile(policy["platform"], configuredOperations); policy["profile"] = operationModule.generateProfile(policy["platform"], configuredOperations);
// updating next-page wizard title with selected platform // updating next-page wizard title with selected platform
$("#policy-criteria-page-wizard-title").text("ADD " + policy["platform"] + " POLICY"); $("#policy-criteria-page-wizard-title").text("ADD " + policy["platform"] + " POLICY");
}; };
/**
* Backward action of policy profile page. Moves back to platform selection step.
*/
stepBackFrom["policy-profile"] = function () { stepBackFrom["policy-profile"] = function () {
// reinitialize configuredOperations // reinitialize configuredOperations
configuredOperations = []; configuredOperations = [];
}; };
/**
* Forward action of policy criteria page.
*/
stepForwardFrom["policy-criteria"] = function () { stepForwardFrom["policy-criteria"] = function () {
$("input[type='radio'].select-users-radio").each(function () { $("input[type='radio'].select-users-radio").each(function () {
if ($(this).is(':radio')) { if ($(this).is(':radio')) {
@ -223,6 +237,11 @@ var inputIsValidAgainstLength = function (input, minLength, maxLength) {
return (length == minLength || (length > minLength && length < maxLength) || length == maxLength); return (length == minLength || (length > minLength && length < maxLength) || length == maxLength);
}; };
/**
* Validates policy criteria inputs.
*
* @returns {boolean} whether the validation is successful.
*/
validateStep["policy-criteria"] = function () { validateStep["policy-criteria"] = function () {
var validationStatus = {}; var validationStatus = {};
var selectedAssignees; var selectedAssignees;
@ -261,6 +280,11 @@ validateStep["policy-criteria"] = function () {
return wizardIsToBeContinued; return wizardIsToBeContinued;
}; };
/**
* Validating policy naming.
*
* @returns {boolean} whether the validation is successful.
*/
validateStep["policy-naming"] = function () { validateStep["policy-naming"] = function () {
var validationStatus = {}; var validationStatus = {};
@ -390,7 +414,7 @@ var savePolicy = function (policy, isActive, serviceURL) {
payload["roles"] = []; payload["roles"] = [];
} }
if(policy["selectedGroups"]) { if(policy["selectedGroups"] && policy["selectedGroups"][0] !== "NONE") {
payload["deviceGroups"] = policy["selectedGroups"]; payload["deviceGroups"] = policy["selectedGroups"];
} }

@ -223,12 +223,18 @@ skipStep["policy-platform"] = function (policyPayloadObj) {
}); });
}; };
/**
* Forward action of policy profile page. Generates policy profile payload.
*/
stepForwardFrom["policy-profile"] = function () { stepForwardFrom["policy-profile"] = function () {
policy["profile"] = operationModule.generateProfile(policy["platform"], configuredOperations); policy["profile"] = operationModule.generateProfile(policy["platform"], configuredOperations);
// updating next-page wizard title with selected platform // updating next-page wizard title with selected platform
$("#policy-criteria-page-wizard-title").text("EDIT " + policy["platform"] + " POLICY - " + policy["name"]); $("#policy-criteria-page-wizard-title").text("EDIT " + policy["platform"] + " POLICY - " + policy["name"]);
}; };
/**
* Forward action of policy criteria page.
*/
stepForwardFrom["policy-criteria"] = function () { stepForwardFrom["policy-criteria"] = function () {
$("input[type='radio'].select-users-radio").each(function () { $("input[type='radio'].select-users-radio").each(function () {
if ($(this).is(':radio')) { if ($(this).is(':radio')) {
@ -267,6 +273,11 @@ var inputIsValidAgainstLength = function (input, minLength, maxLength) {
return (length == minLength || (length > minLength && length < maxLength) || length == maxLength); return (length == minLength || (length > minLength && length < maxLength) || length == maxLength);
}; };
/**
* Validates policy criteria inputs.
*
* @returns {boolean} whether the validation is successful.
*/
validateStep["policy-criteria"] = function () { validateStep["policy-criteria"] = function () {
var validationStatus = {}; var validationStatus = {};
var selectedAssignees; var selectedAssignees;
@ -305,6 +316,11 @@ validateStep["policy-criteria"] = function () {
return wizardIsToBeContinued; return wizardIsToBeContinued;
}; };
/**
* Validating policy naming.
*
* @returns {boolean} whether the validation is successful.
*/
validateStep["policy-naming"] = function () { validateStep["policy-naming"] = function () {
var validationStatus = {}; var validationStatus = {};
@ -444,7 +460,7 @@ var updatePolicy = function (policy, state) {
payload["roles"] = []; payload["roles"] = [];
} }
if (policy["selectedGroups"]) { if (policy["selectedGroups"] && policy["selectedGroups"][0] !== "NONE") {
payload["deviceGroups"] = policy["selectedGroups"]; payload["deviceGroups"] = policy["selectedGroups"];
} }

Loading…
Cancel
Save