use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Wallabag\CoreBundle\Entity\User;
use Wallabag\CoreBundle\Entity\Entry;
+use Pagerfanta\Adapter\DoctrineORMAdapter;
+use Pagerfanta\Pagerfanta;
class RssController extends Controller
{
*/
public function showUnreadAction(User $user)
{
- $entries = $this->getDoctrine()
+ $qb = $this->getDoctrine()
->getRepository('WallabagCoreBundle:Entry')
->findUnreadByUser(
- $user->getId(),
- 0,
- $user->getConfig()->getRssLimit() ?: $this->container->getParameter('rss_limit')
+ $user->getId()
);
+ $pagerAdapter = new DoctrineORMAdapter($qb->getQuery());
+ $entries = new Pagerfanta($pagerAdapter);
+
+ $perPage = $user->getConfig()->getRssLimit() ?: $this->container->getParameter('rss_limit');
+ $entries->setMaxPerPage($perPage);
+
return $this->render('WallabagCoreBundle:Entry:entries.xml.twig', array(
'type' => 'unread',
'entries' => $entries,
*/
public function showArchiveAction(User $user)
{
- $entries = $this->getDoctrine()
+ $qb = $this->getDoctrine()
->getRepository('WallabagCoreBundle:Entry')
->findArchiveByUser(
- $user->getId(),
- 0,
- $user->getConfig()->getRssLimit() ?: $this->container->getParameter('rss_limit')
+ $user->getId()
);
+ $pagerAdapter = new DoctrineORMAdapter($qb->getQuery());
+ $entries = new Pagerfanta($pagerAdapter);
+
+ $perPage = $user->getConfig()->getRssLimit() ?: $this->container->getParameter('rss_limit');
+ $entries->setMaxPerPage($perPage);
+
return $this->render('WallabagCoreBundle:Entry:entries.xml.twig', array(
'type' => 'archive',
'entries' => $entries,
*/
public function showStarredAction(User $user)
{
- $entries = $this->getDoctrine()
+ $qb = $this->getDoctrine()
->getRepository('WallabagCoreBundle:Entry')
->findStarredByUser(
- $user->getId(),
- 0,
- $user->getConfig()->getRssLimit() ?: $this->container->getParameter('rss_limit')
+ $user->getId()
);
+ $pagerAdapter = new DoctrineORMAdapter($qb->getQuery());
+ $entries = new Pagerfanta($pagerAdapter);
+
+ $perPage = $user->getConfig()->getRssLimit() ?: $this->container->getParameter('rss_limit');
+ $entries->setMaxPerPage($perPage);
+
return $this->render('WallabagCoreBundle:Entry:entries.xml.twig', array(
'type' => 'starred',
'entries' => $entries,