diff --git a/rm-server/config/alfresco/module/org_alfresco_module_rm/module-context.xml b/rm-server/config/alfresco/module/org_alfresco_module_rm/module-context.xml index f01df53dce..3d42979a63 100644 --- a/rm-server/config/alfresco/module/org_alfresco_module_rm/module-context.xml +++ b/rm-server/config/alfresco/module/org_alfresco_module_rm/module-context.xml @@ -110,15 +110,6 @@ - - - - - alfresco.module.org_alfresco_module_rm.messages.rm-events - - - - diff --git a/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/admin/rmevent/rmevent.lib.ftl b/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/admin/rmevent/rmevent.lib.ftl index 9fda5f1d95..53d3e1fff8 100644 --- a/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/admin/rmevent/rmevent.lib.ftl +++ b/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/admin/rmevent/rmevent.lib.ftl @@ -4,7 +4,7 @@ <#escape x as jsonUtils.encodeJSONString(x)> { "eventName": "${event.name}", - "eventDisplayLabel": "${msg(event.displayLabel)}", + "eventDisplayLabel": "${event.displayLabel}", "eventType":"${event.type}" } diff --git a/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/admin/rmrole/rmrole.lib.ftl b/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/admin/rmrole/rmrole.lib.ftl index 540a24528b..26e75ed4eb 100644 --- a/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/admin/rmrole/rmrole.lib.ftl +++ b/rm-server/config/alfresco/templates/webscripts/org/alfresco/rma/admin/rmrole/rmrole.lib.ftl @@ -3,7 +3,7 @@ <#escape x as jsonUtils.encodeJSONString(x)> { "name": "${role.name}", - "displayLabel": "${msg(role.displayLabel)}", + "displayLabel": "${role.displayLabel}", "capabilities": { <#list role.capabilities as capability> diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/event/RecordsManagementEventServiceImpl.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/event/RecordsManagementEventServiceImpl.java index 7b4de445aa..47badd50b3 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/event/RecordsManagementEventServiceImpl.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/event/RecordsManagementEventServiceImpl.java @@ -36,6 +36,7 @@ import org.alfresco.service.cmr.repository.StoreRef; import org.alfresco.util.ParameterCheck; import org.json.JSONArray; import org.json.JSONObject; +import org.springframework.extensions.surf.util.I18NUtil; /** * Records management event service implementation @@ -297,8 +298,12 @@ public class RecordsManagementEventServiceImpl implements RecordsManagementEvent // Get the details of the event String eventType = eventJSON.getString("eventType"); String eventName = eventJSON.getString("eventName"); - String eventDisplayLabel = eventJSON.getString("eventDisplayLabel"); + String eventDisplayLabel = eventJSON.getString("eventDisplayLabel"); + String translated = I18NUtil.getMessage(eventDisplayLabel); + if (translated!=null ) eventDisplayLabel = translated; + + // Check that the eventType is valid if (eventTypes.containsKey(eventType) == false) { diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/role/FilePlanRoleServiceImpl.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/role/FilePlanRoleServiceImpl.java index f034365883..a2f83f8bfe 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/role/FilePlanRoleServiceImpl.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/role/FilePlanRoleServiceImpl.java @@ -518,6 +518,8 @@ public class FilePlanRoleServiceImpl implements FilePlanRoleService, String groupShortName = authorityService.getShortName(roleAuthority); String name = getShortRoleName(groupShortName, rmRootNode); String displayLabel = authorityService.getAuthorityDisplayName(roleAuthority); + String translated = I18NUtil.getMessage(displayLabel); + if (translated!=null ) displayLabel = translated; Set capabilities = getCapabilitiesImpl(rmRootNode, roleAuthority); Role role = new Role(name, displayLabel, capabilities, roleAuthority, groupShortName); @@ -559,6 +561,8 @@ public class FilePlanRoleServiceImpl implements FilePlanRoleService, String groupShortName = authorityService.getShortName(roleAuthority); String name = getShortRoleName(groupShortName, rmRootNode); String displayLabel = authorityService.getAuthorityDisplayName(roleAuthority); + String translated = I18NUtil.getMessage(displayLabel); + if (translated!=null ) displayLabel = translated; Set capabilities = getCapabilitiesImpl(rmRootNode, roleAuthority); Role role = new Role(name, displayLabel, capabilities, roleAuthority, groupShortName); diff --git a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/search/SavedSearchDetails.java b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/search/SavedSearchDetails.java index 8be1c3d2a6..34d04a5445 100644 --- a/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/search/SavedSearchDetails.java +++ b/rm-server/source/java/org/alfresco/module/org_alfresco_module_rm/search/SavedSearchDetails.java @@ -24,6 +24,7 @@ import org.alfresco.service.namespace.NamespaceService; import org.alfresco.util.ParameterCheck; import org.json.JSONException; import org.json.JSONObject; +import org.springframework.extensions.surf.util.I18NUtil; /** * Saved search details. @@ -139,6 +140,8 @@ public class SavedSearchDetails extends ReportDetails if (search.has(DESCRIPTION) == true) { description = search.getString(DESCRIPTION); + String translated = I18NUtil.getMessage(description); + if (translated!=null ) description = translated; } // Get the query diff --git a/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/webscript/DispositionRestApiTest.java b/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/webscript/DispositionRestApiTest.java index f0d9b963fa..5a1365e742 100644 --- a/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/webscript/DispositionRestApiTest.java +++ b/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/webscript/DispositionRestApiTest.java @@ -365,7 +365,7 @@ public class DispositionRestApiTest extends BaseRMWebScriptTestCase implements R assertEquals(1, events.length()); JSONObject event1 = events.getJSONObject(0); assertEquals("case_closed", event1.get("name")); - assertEquals("rmevent.case_closed", event1.get("label")); + assertEquals("Case Closed", event1.get("label")); assertFalse(event1.getBoolean("complete")); assertFalse(event1.getBoolean("automatic")); diff --git a/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/webscript/RoleRestApiTest.java b/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/webscript/RoleRestApiTest.java index 8d1a932d38..59bbc8e759 100644 --- a/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/webscript/RoleRestApiTest.java +++ b/rm-server/test/java/org/alfresco/module/org_alfresco_module_rm/test/webscript/RoleRestApiTest.java @@ -64,10 +64,14 @@ public class RoleRestApiTest extends BaseRMWebScriptTestCase { String role1 = GUID.generate(); String role2 = GUID.generate(); + String role3 = GUID.generate(); // Create a couple or roles by hand filePlanRoleService.createRole(filePlan, role1, "My Test Role", getListOfCapabilities(5)); filePlanRoleService.createRole(filePlan, role2, "My Test Role Too", getListOfCapabilities(5)); + + //The user can either enter a plain text label or a key to look up in a property file. + filePlanRoleService.createRole(filePlan, role3, "bootstrap.rmadmin.lastName", getListOfCapabilities(5)); // create test group String groupName = GUID.generate(); @@ -98,6 +102,12 @@ public class RoleRestApiTest extends BaseRMWebScriptTestCase assertEquals(role2, roleObj.get("name")); assertEquals("My Test Role Too", roleObj.get("displayLabel")); checkCapabilities(roleObj, 5); + + //Custom role with a user entered message key + roleObj = roles.getJSONObject(role3); + assertNotNull(roleObj); + assertEquals(role3, roleObj.get("name")); + assertEquals("System Administrator", roleObj.get("displayLabel")); // Get the roles, specifying the file plan rsp = sendRequest(new GetRequest(getRoleUrlByFilePlan()),200);