comments deleted, notations adjusted, ...

This commit is contained in:
Julie Lenaerts 2021-10-01 10:47:32 +02:00
parent 88b8ff86d1
commit 6a34046e93

View File

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