diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-ui-evaluators-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-ui-evaluators-context.xml
index 7d9365adde..203925f02e 100644
--- a/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-ui-evaluators-context.xml
+++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/rm-ui-evaluators-context.xml
@@ -17,6 +17,7 @@
+
diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/jscript/app/JSONConversionComponent.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/jscript/app/JSONConversionComponent.java
index feb17999c2..27be66ac9e 100644
--- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/jscript/app/JSONConversionComponent.java
+++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/jscript/app/JSONConversionComponent.java
@@ -26,6 +26,7 @@ import java.util.Map;
import org.alfresco.model.ContentModel;
import org.alfresco.module.org_alfresco_module_rm.capability.CapabilityService;
import org.alfresco.module.org_alfresco_module_rm.capability.impl.ViewRecordsCapability;
+import org.alfresco.module.org_alfresco_module_rm.classification.SecurityClearanceService;
import org.alfresco.module.org_alfresco_module_rm.fileplan.FilePlanComponentKind;
import org.alfresco.module.org_alfresco_module_rm.fileplan.FilePlanService;
import org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel;
@@ -65,6 +66,7 @@ public class JSONConversionComponent extends org.alfresco.repo.jscript.app.JS
private static final String IS_RM_SITE_CREATED = "isRmSiteCreated";
private static final String IS_RECORD_CONTRIBUTOR_GROUP_ENABLED = "isRecordContributorGroupEnabled";
private static final String RECORD_CONTRIBUTOR_GROUP_NAME = "recordContributorGroupName";
+ private static final String HAS_CLEARANCE = "hasClearance";
/** true if record contributor group is enabled, false otherwise */
private boolean isRecordContributorsGroupEnabled = false;
@@ -87,6 +89,9 @@ public class JSONConversionComponent extends org.alfresco.repo.jscript.app.JS
/** site service */
private SiteService siteService;
+ /** Security clearance service */
+ private SecurityClearanceService securityClearanceService;
+
/** Indicators */
private List indicators = new ArrayList();
@@ -158,6 +163,14 @@ public class JSONConversionComponent extends org.alfresco.repo.jscript.app.JS
this.siteService = siteService;
}
+ /**
+ * @param securityClearanceService the securityClearanceService to set
+ */
+ public void setSecurityClearanceService(SecurityClearanceService securityClearanceService)
+ {
+ this.securityClearanceService = securityClearanceService;
+ }
+
/**
* @param indicator registered indicator
*/
@@ -241,10 +254,13 @@ public class JSONConversionComponent extends org.alfresco.repo.jscript.app.JS
// Get the node reference for convenience
NodeRef nodeRef = nodeInfo.getNodeRef();
+ // Get the clearance information for the node
+ rootJSONObject.put(HAS_CLEARANCE, securityClearanceService.hasClearance(nodeRef));
+
if (AccessStatus.ALLOWED.equals(capabilityService.getCapabilityAccessState(nodeRef, ViewRecordsCapability.NAME)))
{
// Indicate whether the node is a RM object or not
- boolean isFilePlanComponent = filePlanService.isFilePlanComponent(nodeInfo.getNodeRef());
+ boolean isFilePlanComponent = filePlanService.isFilePlanComponent(nodeRef);
rootJSONObject.put(IS_RM_NODE, isFilePlanComponent);
if (isFilePlanComponent)