Newscoop\GimmeBundle\Controller\SectionsController::getSectionsAction PHP Метод

getSectionsAction() публичный Метод

Get Sections
public getSectionsAction ( Request $request )
$request Symfony\Component\HttpFoundation\Request
    public function getSectionsAction(Request $request)
    {
        $em = $this->container->get('em');
        $publication = $this->get('newscoop_newscoop.publication_service')->getPublication()->getId();
        $issue = null;
        $language = null;
        if ($request->query->has('language')) {
            $language = $em->getRepository('Newscoop\\Entity\\Language')->findOneByCode($request->query->get('language'));
        }
        if (!$language) {
            $language = $this->get('newscoop_newscoop.publication_service')->getPublication()->getLanguage();
        }
        if ($request->query->has('issue')) {
            $issue = $em->getRepository('Newscoop\\Entity\\Issue')->getByPublicationAndNumberAndLanguage($request->query->get('publication', $publication), $request->query->get('issue'), $language)->getOneOrNullResult();
        }
        $sections = $em->getRepository('Newscoop\\Entity\\Section')->getSections($request->query->get('publication', $publication), $issue, $issue ? $issue->getLanguage() : $language)->getResult();
        $paginator = $this->get('newscoop.paginator.paginator_service');
        $sections = $paginator->paginate($sections, array('distinct' => false));
        return $sections;
    }