From dcc0956e9b5c7209902a13fdd5a5e7327f3520fd Mon Sep 17 00:00:00 2001 From: Gethin James Date: Thu, 22 Dec 2011 12:44:41 +0000 Subject: [PATCH] FIXED : ALF-11176: Untranslated stings in Group Review and Approve Task form I've changed the way task descriptions are retrieved. You can now enter translations for them. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@32943 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../workflow/workflow-messages.properties | 9 +++++- .../repo/workflow/WorkflowObjectFactory.java | 2 +- .../properties/ActivitiPropertyConverter.java | 31 +++++++++---------- 3 files changed, 24 insertions(+), 18 deletions(-) diff --git a/config/alfresco/workflow/workflow-messages.properties b/config/alfresco/workflow/workflow-messages.properties index cee4e55a59..64459d39cf 100644 --- a/config/alfresco/workflow/workflow-messages.properties +++ b/config/alfresco/workflow/workflow-messages.properties @@ -96,9 +96,10 @@ activitiAdhoc.workflow.description=Assign arbitrary task to colleague using Acti # # Activiti Review And Approve Workflow # - activitiReview.workflow.title=Review And Approve activitiReview.workflow.description=Review and approval of content using Activiti workflow engine +activitiReview.task.approved.description=The document was reviewed and approved. +activitiReview.task.rejected.description=The document was reviewed and rejected. # # Parallel Review Workflow @@ -106,6 +107,8 @@ activitiReview.workflow.description=Review and approval of content using Activit activitiParallelReview.workflow.title=Parallel Review And Approve activitiParallelReview.workflow.description=Parallel Review and approval of content using Activiti workflow engine +activitiParallelReview.task.approved.description=The document was reviewed and approved. +activitiParallelReview.task.rejected.description=The document was reviewed and rejected. # # Activiti Pooled Review Workflow @@ -113,6 +116,8 @@ activitiParallelReview.workflow.description=Parallel Review and approval of cont activitiReviewPooled.workflow.title=Pooled Review And Approve activitiReviewPooled.workflow.description=Pooled review and approval of content using Activiti workflow engine +activitiReviewPooled.task.approved.description=The document was reviewed and approved. +activitiReviewPooled.task.rejected.description=The document was reviewed and rejected. # # Activiti Parallel Group Review Workflow @@ -120,6 +125,8 @@ activitiReviewPooled.workflow.description=Pooled review and approval of content activitiParallelGroupReview.workflow.title=Group Review And Approve activitiParallelGroupReview.workflow.description=Group review and approval of content using Activiti workflow engine +activitiParallelGroupReview.task.approved.description=The document was reviewed and approved. +activitiParallelGroupReview.task.rejected.description=The document was reviewed and rejected. # # Activiti Publish Web Content Workflow diff --git a/source/java/org/alfresco/repo/workflow/WorkflowObjectFactory.java b/source/java/org/alfresco/repo/workflow/WorkflowObjectFactory.java index a6c3984084..423dc4cbf7 100644 --- a/source/java/org/alfresco/repo/workflow/WorkflowObjectFactory.java +++ b/source/java/org/alfresco/repo/workflow/WorkflowObjectFactory.java @@ -268,7 +268,7 @@ public class WorkflowObjectFactory public String getTaskDescription(TypeDefinition typeDefinition, String defName, String defaultDescription, String title) { String displayId = getProcessKey(defName) + ".task." + title; - return getLabel(displayId, DESC_LABEL, defaultDescription, typeDefinition.getTitle(), title); + return getLabel(displayId, DESC_LABEL, defaultDescription); } diff --git a/source/java/org/alfresco/repo/workflow/activiti/properties/ActivitiPropertyConverter.java b/source/java/org/alfresco/repo/workflow/activiti/properties/ActivitiPropertyConverter.java index 37d317bf06..04b777de87 100644 --- a/source/java/org/alfresco/repo/workflow/activiti/properties/ActivitiPropertyConverter.java +++ b/source/java/org/alfresco/repo/workflow/activiti/properties/ActivitiPropertyConverter.java @@ -238,7 +238,6 @@ public class ActivitiPropertyConverter // Map activiti task instance fields to properties properties.put(WorkflowModel.PROP_TASK_ID, task.getId()); - properties.put(WorkflowModel.PROP_DESCRIPTION, task.getDescription()); // Since the task is never started explicitally, we use the create time properties.put(WorkflowModel.PROP_START_DATE, task.getCreateTime()); @@ -405,21 +404,21 @@ public class ActivitiPropertyConverter String description = (String) existingValues.get(WorkflowModel.PROP_DESCRIPTION); if (description == null || description.length() == 0) { - // Use the shared description set in the workflowinstance - String descriptionKey = factory.mapQNameToName(WorkflowModel.PROP_WORKFLOW_DESCRIPTION); - description = (String) task.getExecution().getVariable(descriptionKey); - if (description != null && description.length() > 0) - { - defaultValues.put(WorkflowModel.PROP_DESCRIPTION, description); - } - else - { - String processDefinitionKey = ((TaskEntity)task).getExecution().getProcessDefinition().getId(); - - // Revert to title in metaData - String title = factory.getTaskTitle(typeDefinition, factory.buildGlobalId(processDefinitionKey), task.getName(), task.getName()); - defaultValues.put(WorkflowModel.PROP_DESCRIPTION, title); + //Try the localised task description first + String processDefinitionKey = ((ProcessDefinition) ((TaskEntity)task).getExecution().getProcessDefinition()).getKey(); + description = factory.getTaskDescription(typeDefinition, factory.buildGlobalId(processDefinitionKey), null, task.getTaskDefinitionKey()); + if (description != null && description.length() > 0) { + defaultValues.put(WorkflowModel.PROP_DESCRIPTION, description); + } else { + String descriptionKey = factory.mapQNameToName(WorkflowModel.PROP_WORKFLOW_DESCRIPTION); + description = (String) task.getExecution().getVariable(descriptionKey); + if (description != null && description.length() > 0) { + defaultValues.put(WorkflowModel.PROP_DESCRIPTION, description); + } else { + defaultValues.put(WorkflowModel.PROP_DESCRIPTION, task.getName()); + } } + } // Assign the default values to the task @@ -884,7 +883,7 @@ public class ActivitiPropertyConverter ReadOnlyProcessDefinition deployedDef = activitiUtil.getDeployedProcessDefinition(processDefId); String startEventName = deployedDef.getInitial().getId(); String wfDefKey = factory.buildGlobalId(procDefKey); - factory.getTaskDescription(startTaskType, wfDefKey, wfDescription, startEventName); + description = factory.getTaskDescription(startTaskType, wfDefKey, wfDescription, startEventName); defaultProperties.put(WorkflowModel.PROP_DESCRIPTION, description); } return handlerRegistry.handleVariablesToSet(defaultProperties, startTaskType, null, Void.class);