getDoctrine() ->getRepository(Person::class) ->find($person_id); if (null === $person) { throw $this->createNotFoundException(); } $this->denyAccessUnlessGranted(PersonVoter::SEE, $person); $nbItems = $this->timelineBuilder->countItems( 'person', ['person' => $person] ); $paginator = $this->paginatorFactory->create($nbItems); $event = new PrivacyEvent($person, ['action' => 'timeline']); $this->eventDispatcher->dispatch($event, PrivacyEvent::PERSON_PRIVACY_EVENT); return $this->render( '@ChillPerson/Timeline/index.html.twig', [ 'timeline' => $this->timelineBuilder->getTimelineHTML( 'person', ['person' => $person], $paginator->getCurrentPage()->getFirstItemNumber(), $paginator->getItemsPerPage() ), 'person' => $person, 'nb_items' => $nbItems, 'paginator' => $paginator, ] ); } }