diff --git a/ccm-cms/src/main/java/com/arsdigita/cms/ui/workflow/AssignedTaskTable.java b/ccm-cms/src/main/java/com/arsdigita/cms/ui/workflow/AssignedTaskTable.java
index 38611ab67..fd768f819 100755
--- a/ccm-cms/src/main/java/com/arsdigita/cms/ui/workflow/AssignedTaskTable.java
+++ b/ccm-cms/src/main/java/com/arsdigita/cms/ui/workflow/AssignedTaskTable.java
@@ -29,7 +29,6 @@ import com.arsdigita.bebop.event.TableActionEvent;
import com.arsdigita.bebop.table.DefaultTableCellRenderer;
import com.arsdigita.bebop.table.TableCellRenderer;
-
import com.arsdigita.globalization.GlobalizedMessage;
import org.libreccm.cdi.utils.CdiUtil;
@@ -41,6 +40,8 @@ import org.libreccm.workflow.AssignableTaskRepository;
import org.libreccm.workflow.WorkflowManager;
import org.librecms.CmsConstants;
+import java.util.Optional;
+
public final class AssignedTaskTable extends Table {
public AssignedTaskTable(final WorkflowRequestLocal workflow) {
@@ -65,22 +66,20 @@ public final class AssignedTaskTable extends Table {
final int column = event.getColumn();
final CdiUtil cdiUtil = CdiUtil.createCdiUtil();
- final AssignableTaskRepository userTaskRepo = cdiUtil.findBean(
- AssignableTaskRepository.class);
- final WorkflowManager workflowManager = cdiUtil.findBean(
- WorkflowManager.class);
- final AssignableTaskManager taskManager = cdiUtil.findBean(
- AssignableTaskManager.class);
+ final AssignableTaskRepository userTaskRepo = cdiUtil
+ .findBean(AssignableTaskRepository.class);
+ final AssignableTaskManager taskManager = cdiUtil
+ .findBean(AssignableTaskManager.class);
final Shiro shiro = cdiUtil.findBean(Shiro.class);
if (column == 1) {
final AssignableTask task = userTaskRepo.findById((Long) event
- .getRowKey()).get();
+ .getRowKey()).get();
final User currentUser = shiro.getUser().get();
final User lockingUser = task.getLockingUser();
if (task.isLocked()
- && lockingUser != null
- && lockingUser.equals(currentUser)) {
+ && lockingUser != null
+ && lockingUser.equals(currentUser)) {
taskManager.unlockTask(task);
} else {
taskManager.lockTask(task);
@@ -104,23 +103,49 @@ public final class AssignedTaskTable extends Table {
final BoxPanel panel = new BoxPanel();
final String lockingUserName = (String) value;
if (lockingUserName != null) {
- final StringBuilder sb = new StringBuilder("Locked by
");
+
final CdiUtil cdiUtil = CdiUtil.createCdiUtil();
final Shiro shiro = cdiUtil.findBean(Shiro.class);
- if (shiro.getUser().isPresent()
- && lockingUserName.equals(shiro.getUser().get().getName())) {
- sb.append("you");
+
+ final Optional currentUser = shiro.getUser();
+ if (currentUser.isPresent()
+ && currentUser.get().getName().equals(lockingUserName)) {
panel.add(new ControlLink(new Label(
- gz("cms.ui.workflow.task.unlock"))));
+ new GlobalizedMessage("cms.ui.workflow.task.unlock",
+ CmsConstants.CMS_BUNDLE))));
+ panel.add(new Label(
+ new GlobalizedMessage(
+ "cms.ui.workflow.task.locked_by_you",
+ CmsConstants.CMS_BUNDLE)));
} else {
- sb.append(lockingUserName);
panel.add(new ControlLink(new Label(
- gz("cms.ui.workflow.task.takeover"))));
+ new GlobalizedMessage("cms.ui.workflow.task.takeover",
+ CmsConstants.CMS_BUNDLE))));
+ panel.add(new Label(
+ new GlobalizedMessage(
+ "cms.ui.workflow.task.locked_by",
+ CmsConstants.CMS_BUNDLE,
+ new String[]{lockingUserName})));
}
- panel.add(new Label(sb.toString(), false));
+
+// final StringBuilder sb = new StringBuilder("Locked by
");
+// final CdiUtil cdiUtil = CdiUtil.createCdiUtil();
+// final Shiro shiro = cdiUtil.findBean(Shiro.class);
+// if (shiro.getUser().isPresent()
+// && lockingUserName.equals(shiro.getUser().get()
+// .getName())) {
+// sb.append("you");
+// panel.add(new ControlLink(new Label(
+// gz("cms.ui.workflow.task.unlock"))));
+// } else {
+// sb.append(lockingUserName);
+// panel.add(new ControlLink(new Label(
+// gz("cms.ui.workflow.task.takeover"))));
+// }
+// panel.add(new Label(sb.toString(), false));
} else {
panel.add(new ControlLink(
- new Label(gz("cms.ui.workflow.task.lock"))));
+ new Label(gz("cms.ui.workflow.task.lock"))));
}
return panel;
}
diff --git a/ccm-cms/src/main/resources/org/librecms/CmsResources.properties b/ccm-cms/src/main/resources/org/librecms/CmsResources.properties
index 7aef8a34d..11e81e28f 100644
--- a/ccm-cms/src/main/resources/org/librecms/CmsResources.properties
+++ b/ccm-cms/src/main/resources/org/librecms/CmsResources.properties
@@ -327,3 +327,5 @@ cms.ui.workflow.task.reject=Reject
cms.ui.workflow.task.takeover=Take over
cms.ui.workflow.task.unlock=Unlock task
cms.ui.workflow.task.user.add=Assign user
+cms.ui.workflow.task.locked_by=Locked by {0}
+cms.ui.workflow.task.locked_by_you=Locked by you
diff --git a/ccm-cms/src/main/resources/org/librecms/CmsResources_de.properties b/ccm-cms/src/main/resources/org/librecms/CmsResources_de.properties
index 3f8eb89cd..86926ad24 100644
--- a/ccm-cms/src/main/resources/org/librecms/CmsResources_de.properties
+++ b/ccm-cms/src/main/resources/org/librecms/CmsResources_de.properties
@@ -324,3 +324,5 @@ cms.ui.workflow.task.reject=Zur\u00fcckweisen
cms.ui.workflow.task.takeover=\u00dcbernehmen
cms.ui.workflow.task.unlock=Aufgabe freigeben
cms.ui.workflow.task.user.add=Benutzer zuordnen
+cms.ui.workflow.task.locked_by=Reserviert durch {0}
+cms.ui.workflow.task.locked_by_you=Von Ihnen reserviert
diff --git a/ccm-cms/src/main/resources/org/librecms/CmsResources_fr.properties b/ccm-cms/src/main/resources/org/librecms/CmsResources_fr.properties
index dc0d1d7fa..930c0928d 100644
--- a/ccm-cms/src/main/resources/org/librecms/CmsResources_fr.properties
+++ b/ccm-cms/src/main/resources/org/librecms/CmsResources_fr.properties
@@ -283,3 +283,5 @@ cms.ui.workflow.task.reject=Reject
cms.ui.workflow.task.takeover=Take over
cms.ui.workflow.task.unlock=Unlock task
cms.ui.workflow.task.user.add=Assign user
+cms.ui.workflow.task.locked_by=Locked by {0}
+cms.ui.workflow.task.locked_by_you=Locked by you