From 9852430b13faebb23bce0f81ed5c0b8b000cdb07 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Fastr=C3=A9?= Date: Thu, 5 Jul 2018 15:12:09 +0200 Subject: [PATCH] add task type in list --- Resources/translations/messages.fr.yml | 1 + Resources/views/SingleTask/_list.html.twig | 4 ++-- Workflow/Definition/DefaultTaskDefinition.php | 13 +++++++++---- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/Resources/translations/messages.fr.yml b/Resources/translations/messages.fr.yml index 15be4ee03..9dfaafe0c 100644 --- a/Resources/translations/messages.fr.yml +++ b/Resources/translations/messages.fr.yml @@ -57,6 +57,7 @@ Filter: Filtrer Any user: Tous les utilisateurs Unassigned: Non assigné Associated person: Personne associée +Default task: Tâche par défaut # transitions diff --git a/Resources/views/SingleTask/_list.html.twig b/Resources/views/SingleTask/_list.html.twig index a64647e4d..d0ee8d104 100644 --- a/Resources/views/SingleTask/_list.html.twig +++ b/Resources/views/SingleTask/_list.html.twig @@ -6,7 +6,7 @@ {{ 'Title'|trans }} - {# {{ 'Task type'|trans }} #} + {{ 'Task type'|trans }} {% if person is null %} {{ 'Person'|trans }} {% endif %} @@ -18,7 +18,7 @@ {% for task in tasks %} {{ task.title }} - {# {{ task.type }} #} + {{ task_workflow_metadata(task, 'definition.name') }} {% if person is null %} {{ task.person}} {% endif %} diff --git a/Workflow/Definition/DefaultTaskDefinition.php b/Workflow/Definition/DefaultTaskDefinition.php index 8c26edcb4..3c9fd677e 100644 --- a/Workflow/Definition/DefaultTaskDefinition.php +++ b/Workflow/Definition/DefaultTaskDefinition.php @@ -45,6 +45,10 @@ class DefaultTaskDefinition implements \Chill\TaskBundle\Workflow\TaskWorkflowDe 'sentence' => '%user% has started the task' ] ]; + + const DEFINITION_METADATA = [ + 'name' => 'Default task' + ]; public function supports(AbstractTask $task) { @@ -71,20 +75,21 @@ class DefaultTaskDefinition implements \Chill\TaskBundle\Workflow\TaskWorkflowDe } return $this->getTransitionMetadata(\implode('.', \array_slice($keys, 1)), $metadataSubject); + case 'definition': + return self::DEFINITION_METADATA[$keys[1]] ?? $key; default: - throw new \LogicException("this key '$key' is not implemented"); + return $key; } } protected function getTransitionMetadata($key, Transition $transition) { if (!\array_key_exists($transition->getName(), self::TRANSITION_METADATA)) { - throw new \LogicException("the metadata for this transition are not defined"); + return $key; } if (!\array_key_exists($key, self::TRANSITION_METADATA[$transition->getName()])) { - throw new \LogicException("The metadata ".$key." is not " - . "defined for the transition ".$transition.getName()); + return $key; } return self::TRANSITION_METADATA[$transition->getName()][$key];