diff --git a/src/ZucchiDoctrine/Query/Provider/DefaultOrm.php b/src/ZucchiDoctrine/Query/Provider/DefaultOrm.php index 919c69a..7bf370d 100644 --- a/src/ZucchiDoctrine/Query/Provider/DefaultOrm.php +++ b/src/ZucchiDoctrine/Query/Provider/DefaultOrm.php @@ -78,6 +78,11 @@ public function createQuery(ResourceEvent $event, $entityClass, $parameters) $this->addLimit($queryBuilder, $limit); } + // trigger event for manipulating $where + $providerEvent = new Event(Event::EVENT_QUERYBUILDER, $queryBuilder, array('entityClass' => $entityClass)); + $providerEvent->setEntityManager($this->getObjectManager()); + $this->getEventManager()->trigger($providerEvent); + return $queryBuilder; } diff --git a/src/ZucchiDoctrine/Query/Provider/Event.php b/src/ZucchiDoctrine/Query/Provider/Event.php index a90590a..ac77a0e 100644 --- a/src/ZucchiDoctrine/Query/Provider/Event.php +++ b/src/ZucchiDoctrine/Query/Provider/Event.php @@ -20,5 +20,5 @@ class Event extends ZendEvent implements EntityManagerAwareInterface const EVENT_WHERE = 'where'; const EVENT_ORDER = 'order'; const EVENT_LIMIT = 'limit'; - + const EVENT_QUERYBUILDER = 'querybuilder'; } \ No newline at end of file