/** * @Route("/details/{id}", requirements={"id"="\d+"}) * @ParamConverter("question", class="CivixCoreBundle:Poll\Question") * @Template("CivixFrontBundle:Question:details.html.twig") */ public function detailsAction(Request $request, Question $question) { $entityManager = $this->getDoctrine()->getManager(); $statistics = $question->getStatistic(['#7ac768', '#ba3830', '#4fb0f3', '#dbfa08', '#08fac4']); $query = $entityManager->getRepository('CivixCoreBundle:Poll\\Answer')->getAnswersByQuestion($question->getId()); $pagination = $this->get('knp_paginator')->paginate($query, $this->getRequest()->get('page', 1), 20); return ['statistics' => $statistics, 'pagination' => $pagination]; }
private function getQuestionDetails(Question $question, $class) { try { $questionDetails = $this->getDoctrine()->getRepository('CivixCoreBundle:Poll\\Question')->getPublishedQuestionWithAnswers($question->getId(), $class); } catch (LogicException $e) { throw $this->createNotFoundException(); } if (!$questionDetails) { throw $this->createNotFoundException(); } $statistics = $question->getStatistic(['#7ac768', '#ba3830', '#4fb0f3', '#dbfa08', '#08fac4']); return ['statistics' => $statistics, 'question' => $questionDetails]; }