public function searchArticlesAction(Request $request) { $articleSearch = $this->container->get('search.article'); $publication = $this->get('newscoop.publication_service')->getPublication(); $onlyPublished = true; try { $user = $this->container->get('user')->getCurrentUser(); if ($user && $user->isAdmin()) { $onlyPublished = false; } } catch (AuthenticationException $e) { /* User is not logged in */ } $articleSearchCriteria = new ArticleSearchCriteria(); $articleSearchCriteria->fillFromRequest($request); $articles = $articleSearch->searchArticles($articleSearchCriteria, $onlyPublished); $paginator = $this->get('newscoop.paginator.paginator_service'); $articles = $paginator->paginate($articles, array('distinct' => false)); return $articles; }