<?php
namespace Knp\Component\Pager\Event\Subscriber\Paginate\Doctrine\ORM;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Knp\Component\Pager\Event\ItemsEvent;
use Doctrine\ORM\QueryBuilder;
class QueryBuilderSubscriber implements EventSubscriberInterface
{
public function items(ItemsEvent $event)
{
if ($event->target instanceof QueryBuilder) {
// change target into query
$event->target = $event->target->getQuery();
}
}
public static function getSubscribedEvents()
{
return array(
'knp_pager.items' => array('items', 10/*make sure to transform before any further modifications*/)
);
}
}