Fix issues in generic policy editor

4.x.x
charitha 8 years ago
parent 78bef05e11
commit 312098b1de

@ -34,4 +34,15 @@ window.queryEditor = CodeMirror.fromTextArea(document.getElementById('policy-def
var validatePolicyProfile = function () { var validatePolicyProfile = function () {
return true; return true;
}; };
/**
* Generates policy profile feature list which will be saved with the profile.
*
* This function will be invoked from the relevant cdmf unit at the time of policy creation.
*
* @returns {Array} profile payloads
*/
var generateGenericPayload = function () {
return window.queryEditor.getValue();
};

@ -21,6 +21,7 @@ var policy = {};
var validateInline = {}; var validateInline = {};
var clearInline = {}; var clearInline = {};
var validateStep = {}; var validateStep = {};
var hasPolicyProfileScript = false;
var enableInlineError = function (inputField, errorMsg, errorSign) { var enableInlineError = function (inputField, errorMsg, errorSign) {
var fieldIdentifier = "#" + inputField; var fieldIdentifier = "#" + inputField;
@ -157,6 +158,9 @@ stepForwardFrom["policy-platform"] = function (actionButton) {
script.type = 'text/javascript'; script.type = 'text/javascript';
script.src = context + policyOperationsScriptSrc; script.src = context + policyOperationsScriptSrc;
$(".wr-advance-operations").prepend(script); $(".wr-advance-operations").prepend(script);
hasPolicyProfileScript = true;
} else {
hasPolicyProfileScript = false;
} }
if (policyOperationsStylesSrc) { if (policyOperationsStylesSrc) {
var style = document.createElement('link'); var style = document.createElement('link');
@ -172,11 +176,14 @@ stepForwardFrom["policy-platform"] = function (actionButton) {
* Forward action of policy profile page. Generates policy profile payload. * Forward action of policy profile page. Generates policy profile payload.
*/ */
stepForwardFrom["policy-profile"] = function () { stepForwardFrom["policy-profile"] = function () {
/* policy["profile"] = [];
generatePolicyProfile() function should be implemented in plugin side and should include the logic to build the if (hasPolicyProfileScript) {
policy profile object. /*
*/ generatePolicyProfile() function should be implemented in plugin side and should include the logic to build the
policy["profile"] = generatePolicyProfile(); policy profile object.
*/
policy["profile"] = generatePolicyProfile();
}
// 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");
}; };
@ -185,11 +192,13 @@ stepForwardFrom["policy-profile"] = function () {
* Backward action of policy profile page. Moves back to platform selection step. * Backward action of policy profile page. Moves back to platform selection step.
*/ */
stepBackFrom["policy-profile"] = function () { stepBackFrom["policy-profile"] = function () {
/* if (hasPolicyProfileScript) {
resetPolicyProfile() function should be implemented in plugin side and should include the logic to reset the policy /*
profile object. resetPolicyProfile() function should be implemented in plugin side and should include the logic to reset the policy
*/ profile object.
resetPolicyProfile(); */
resetPolicyProfile();
}
}; };
/** /**
@ -365,21 +374,26 @@ stepForwardFrom["policy-naming"] = function () {
}; };
var savePolicy = function (policy, isActive, serviceURL) { var savePolicy = function (policy, isActive, serviceURL) {
/* var profilePayloads;
generateProfileFeaturesList() should be implemented in the plugin side and should include logic to build the if (hasPolicyProfileScript) {
profilePayloads array which contains objects, {featureCode:"value", deviceType:"value", content:"value"}. /*
policy["profile"] object will be available for the method which returns from the generatePolicyProfile() function. generateProfileFeaturesList() should be implemented in the plugin side and should include logic to build the
*/ profilePayloads array which contains objects, {featureCode:"value", deviceType:"value", content:"value"}.
var profilePayloads = generateProfileFeaturesList(); policy["profile"] object will be available for the method which returns from the generatePolicyProfile() function.
*/
$.each(profilePayloads, function (i, item) { profilePayloads = generateProfileFeaturesList();
$.each(item.content, function (key, value) {
//cannot add a true check since it will catch value = false as well $.each(profilePayloads, function (i, item) {
if (value === null || value === undefined || value === "") { $.each(item.content, function (key, value) {
item.content[key] = null; //cannot add a true check since it will catch value = false as well
} if (value === null || value === undefined || value === "") {
item.content[key] = null;
}
});
}); });
}); } else {
profilePayloads = generateGenericPayload();
}
var payload = { var payload = {
"policyName": policy["policyName"], "policyName": policy["policyName"],

Loading…
Cancel
Save