mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-08-21 07:03:49 +00:00
refactor list by course: use acl aware repository
This commit is contained in:
@@ -472,7 +472,11 @@ final class SingleTaskController extends AbstractController
|
||||
$filterOrder->getQueryString(),
|
||||
$flags,
|
||||
$paginator->getCurrentPageFirstItemNumber(),
|
||||
$paginator->getItemsPerPage()
|
||||
$paginator->getItemsPerPage(),
|
||||
[
|
||||
'startDate' => 'DESC',
|
||||
'endDate' => 'DESC',
|
||||
]
|
||||
);
|
||||
|
||||
return $this->render('@ChillTask/SingleTask/List/index.html.twig', [
|
||||
@@ -694,6 +698,7 @@ final class SingleTaskController extends AbstractController
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
protected function getPersonParam(EntityManagerInterface $em)
|
||||
{
|
||||
$person = $em->getRepository(Person::class)
|
||||
@@ -722,6 +727,7 @@ final class SingleTaskController extends AbstractController
|
||||
|
||||
return $user;
|
||||
}
|
||||
*/
|
||||
|
||||
/**
|
||||
* Creates a form to delete a Task entity by id.
|
||||
@@ -750,34 +756,40 @@ final class SingleTaskController extends AbstractController
|
||||
|
||||
public function listCourseTasks(
|
||||
AccompanyingPeriod $course,
|
||||
SingleTaskRepository $taskRepository,
|
||||
FormFactoryInterface $formFactory,
|
||||
Request $request
|
||||
): Response
|
||||
{
|
||||
|
||||
$em = $this->getDoctrine()->getManager();
|
||||
|
||||
$tasks = $taskRepository
|
||||
->findBy(
|
||||
array('course' => $course)
|
||||
);
|
||||
|
||||
$form = $formFactory->createNamed(null, SingleTaskListType::class, null, [
|
||||
'accompanyingCourse' => $course,
|
||||
'method' => Request::METHOD_GET,
|
||||
'csrf_protection' => false,
|
||||
'add_type' => true
|
||||
]);
|
||||
$filterOrder = $this->buildFilterOrder();
|
||||
$flags = \array_merge(
|
||||
$filterOrder->getCheckboxData('status'),
|
||||
\array_map(fn ($i) => 'state_'.$i, $filterOrder->getCheckboxData('states'))
|
||||
);
|
||||
$nb = $this->singleTaskAclAwareRepository->countByCourse(
|
||||
$course,
|
||||
$filterOrder->getQueryString(),
|
||||
$flags
|
||||
);
|
||||
$paginator = $this->paginatorFactory->create($nb);
|
||||
$tasks = $this->singleTaskAclAwareRepository->findByCourse(
|
||||
$course,
|
||||
$filterOrder->getQueryString(),
|
||||
$flags,
|
||||
$paginator->getCurrentPageFirstItemNumber(),
|
||||
$paginator->getItemsPerPage(),
|
||||
[
|
||||
'startDate' => 'DESC',
|
||||
'endDate' => 'DESC',
|
||||
]
|
||||
);
|
||||
|
||||
return $this->render(
|
||||
'@ChillTask/SingleTask/index.html.twig',
|
||||
'@ChillTask/SingleTask/AccompanyingCourse/list.html.twig',
|
||||
[
|
||||
'tasks' => $tasks,
|
||||
'accompanyingCourse' => $course,
|
||||
'layout' => '@ChillPerson/AccompanyingCourse/layout.html.twig',
|
||||
'form' => $form->createView(),
|
||||
'title' => $this->translator->trans('Tasks for this accompanying period')
|
||||
'paginator' => $paginator,
|
||||
'filter_order' => $filterOrder
|
||||
]);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user