public function getSectionsArticlesAction(Request $request, $number, $language) { $em = $this->container->get('em'); $publication = $this->get('newscoop_newscoop.publication_service')->getPublication()->getId(); $paginatorService = $this->get('newscoop.paginator.paginator_service'); $paginatorService->setUsedRouteParams(array('number' => $number, 'language' => $language)); $language = $em->getRepository('Newscoop\\Entity\\Language')->findOneByCode($language); $section = $em->getRepository('Newscoop\\Entity\\Section')->findOneBy(array('number' => $number, 'language' => $language, 'publication' => $publication)); if (!$section) { throw new NotFoundHttpException('Result was not found.'); } $articles = $em->getRepository('Newscoop\\Entity\\Article')->getArticlesForSection($publication, $number, $language); $paginator = $this->get('newscoop.paginator.paginator_service'); $articles = $paginator->paginate($articles, array('distinct' => false)); $allItems = array_merge(array('id' => $section->getId(), 'title' => $section->getName()), $articles); return $allItems; }