diff --git a/src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php b/src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php index b16b15bd1..5bcc8f53c 100644 --- a/src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php +++ b/src/Bundle/ChillTaskBundle/Controller/SingleTaskController.php @@ -31,7 +31,9 @@ use Chill\MainBundle\Timeline\TimelineBuilder; use Chill\PersonBundle\Entity\AccompanyingPeriod; use Chill\PersonBundle\Repository\AccompanyingPeriodRepository; use Chill\PersonBundle\Security\Authorization\AccompanyingPeriodVoter; +use Doctrine\ORM\EntityManagerInterface; use Symfony\Component\HttpFoundation\RequestStack; +use Symfony\Contracts\Translation\TranslatorInterface as TranslationTranslatorInterface; /** * Class SingleTaskController @@ -78,7 +80,6 @@ class SingleTaskController extends AbstractController $this->logger = $logger; $this->request = $requestStack->getCurrentRequest(); } - private function getEntityContext() { @@ -99,7 +100,7 @@ class SingleTaskController extends AbstractController * ) */ public function newAction( - TranslatorInterface $translator + TranslationTranslatorInterface $translator ) { $task = (new SingleTask()) @@ -190,14 +191,14 @@ class SingleTaskController extends AbstractController switch($this->getEntityContext()){ case 'person': - return $this->render('ChillTaskBundle:SingleTask:new.html.twig', array( + return $this->render('@ChillTask/SingleTask/Person/new.html.twig', array( 'form' => $form->createView(), 'task' => $task, 'person' => $person, )); break; case 'course': - return $this->render('ChillTaskBundle:SingleTask:newCourseTask.html.twig', array( + return $this->render('@ChillTask/SingleTask/AccompanyingCourse/show.html.twig', array( 'form' => $form->createView(), 'task' => $task, 'accompanyingCourse' => $course, @@ -207,7 +208,6 @@ class SingleTaskController extends AbstractController } - /** * @Route( * "/{_locale}/task/single-task/{id}/show", @@ -220,14 +220,10 @@ class SingleTaskController extends AbstractController $em = $this->getDoctrine()->getManager(); $task = $em->getRepository(SingleTask::class)->find($id); - // In case no task is found - if (!$task) { throw $this->createNotFoundException('Unable to find Task entity.'); } - // In case task belongs to person - if ($task->getPerson() !== null) { $personId = $task->getPerson()->getId(); @@ -253,8 +249,6 @@ class SingleTaskController extends AbstractController } - // In case task belongs to accompanying course - if ($task->getCourse() !== null) { $courseId = $task->getCourse()->getId(); @@ -282,12 +276,12 @@ class SingleTaskController extends AbstractController if($task->getContext() instanceof Person){ - return $this->render('@ChillTask/SingleTask/show.html.twig', array( + return $this->render('@ChillTask/SingleTask/Person/show.html.twig', array( 'task' => $task, 'timeline' => $timeline )); } else { - return $this->render('@ChillTask/SingleTask/showCourseTask.html.twig', array( + return $this->render('@ChillTask/SingleTask/AccompanyingCourse/show.html.twig', array( 'task' => $task, 'timeline' => $timeline )); @@ -304,7 +298,7 @@ class SingleTaskController extends AbstractController */ public function editAction( $id, - TranslatorInterface $translator + TranslationTranslatorInterface $translator ) { $em = $this->getDoctrine()->getManager(); @@ -402,12 +396,12 @@ class SingleTaskController extends AbstractController )); $this->eventDispatcher->dispatch(PrivacyEvent::PERSON_PRIVACY_EVENT, $event); - return $this->render('@ChillTask/SingleTask/edit.html.twig', array( + return $this->render('@ChillTask/SingleTask/Person/edit.html.twig', array( 'task' => $task, 'form' => $form->createView() )); } else { - return $this->render('@ChillTask/SingleTask/editCourseTask.html.twig', array( + return $this->render('@ChillTask/SingleTask/AccompanyingCourse/edit.html.twig', array( 'task' => $task, 'form' => $form->createView(), 'accompanyingCourse' => $course @@ -426,7 +420,7 @@ class SingleTaskController extends AbstractController public function deleteAction( Request $request, $id, - TranslatorInterface $translator + TranslationTranslatorInterface $translator ) { $em = $this->getDoctrine()->getManager(); @@ -465,9 +459,10 @@ class SingleTaskController extends AbstractController } } + // TODO: reactivate right to delete - $this->denyAccessUnlessGranted(TaskVoter::DELETE, $task, 'You are not ' - . 'allowed to delete this task'); + // $this->denyAccessUnlessGranted(TaskVoter::DELETE, $task, 'You are not ' + // . 'allowed to delete this task'); $form = $this->createDeleteForm($id); @@ -481,10 +476,8 @@ class SingleTaskController extends AbstractController 'task_id' => $task->getId(), 'description' => $task->getDescription(), 'assignee' => $task->getAssignee(), - 'scope_id' => $task->getScope()->getId(), - //'start_date' => $task->getStartDate()->format('Y-m-d'), - //'end_date' => $task->getEndDate()->format('Y-m-d'), - //'warning_interval' => $task->getWarningInterval()->format('Y-m-d') + // TODO reimplement scope + // 'scope_id' => $task->getScope()->getId(), )); $em = $this->getDoctrine()->getManager(); @@ -511,12 +504,12 @@ class SingleTaskController extends AbstractController } if($task->getContext() instanceof Person){ - return $this->render('@ChillTask/SingleTask/confirm_delete.html.twig', array( + return $this->render('@ChillTask/SingleTask/Person/confirm_delete.html.twig', array( 'task' => $task, 'delete_form' => $form->createView() )); } else { - return $this->render('@ChillTask/SingleTask/confirm_deleteCourseTask.html.twig', array( + return $this->render('@ChillTask/SingleTask/AccompanyingCourse/confirm_delete.html.twig', array( 'task' => $task, 'delete_form' => $form->createView(), 'accompanyingCourse' => $course @@ -551,7 +544,7 @@ class SingleTaskController extends AbstractController * name="chill_task_single_my_tasks" * ) */ - public function myTasksAction(TranslatorInterface $translator) + public function myTasksAction(TranslationTranslatorInterface $translator) { return $this->redirectToRoute('chill_task_singletask_list', [ 'user_id' => $this->getUser()->getId(), @@ -595,8 +588,6 @@ class SingleTaskController extends AbstractController $viewParams['accompanyingCourse'] = null; $params['accompanyingCourse'] = null; - - // Get parameters from url if (!empty($this->request->query->get('person_id', NULL))) { $personId = $this->request->query->getInt('person_id', 0); @@ -675,11 +666,9 @@ class SingleTaskController extends AbstractController $params['scope'] = $scope; } - // collect parameters for filter $possibleStatuses = \array_merge(SingleTaskRepository::DATE_STATUSES, [ 'closed' ]); $statuses = $this->request->query->get('status', $possibleStatuses); - // check for invalid statuses $diff = \array_diff($statuses, $possibleStatuses); if (count($diff) > 0) { return new Response( @@ -698,7 +687,6 @@ class SingleTaskController extends AbstractController continue; } - // different query if regarding to date or 'closed' if (in_array($status, SingleTaskRepository::DATE_STATUSES)) { $params['date_status'] = $status; $params['is_closed'] = false; @@ -723,7 +711,6 @@ class SingleTaskController extends AbstractController $tasks_count = $tasks_count + $count; } - // total number of tasks $viewParams['tasks_count'] = $tasks_count; if ($viewParams['person'] !== null){ @@ -734,24 +721,12 @@ class SingleTaskController extends AbstractController $viewParams['layout'] = '@ChillMain/layout.html.twig'; } - // Form for filtering tasks - if($this->getEntityContext() === 'person'){ - $form = $formFactory->createNamed(null, SingleTaskListType::class, null, [ - 'person' => $viewParams['person'], - 'method' => Request::METHOD_GET, - 'csrf_protection' => false, - 'add_type' => true - ]); - } - - if($this->getEntityContext() === 'course'){ - $form = $formFactory->createNamed(null, SingleTaskListType::class, null, [ - 'accompanyingCourse' => $viewParams['accompanyingCourse'], - 'method' => Request::METHOD_GET, - 'csrf_protection' => false, - 'add_type' => true - ]); - } + $form = $formFactory->createNamed(null, SingleTaskListType::class, null, [ + 'person' => $viewParams['person'], + 'method' => Request::METHOD_GET, + 'csrf_protection' => false, + 'add_type' => true + ]); $form->handleRequest($this->request); @@ -826,7 +801,7 @@ class SingleTaskController extends AbstractController AccompanyingPeriodRepository $courseRepository, SingleTaskRepository $taskRepository, FormFactoryInterface $formFactory, - TranslatorInterface $translator + TranslationTranslatorInterface $translator ): Response {