public function testQueryRemoveOffsetPart()
 {
     $q = new Doctrine_Query();
     $q->from('User u');
     $q->offset(10);
     $q->removeDqlQueryPart('offset');
     $this->assertEqual($q->getSqlQuery(), 'SELECT e.id AS e__id, e.name AS e__name, e.loginname AS e__loginname, e.password AS e__password, e.type AS e__type, e.created AS e__created, e.updated AS e__updated, e.email_id AS e__email_id FROM entity e WHERE (e.type = 0)');
 }
Esempio n. 2
0
 /**
  * Returns query for count of items.
  *
  * @return Doctrine_Query
  */
 protected function getCountQuery()
 {
     if ($this->_countQuery == null) {
         $this->_countQuery = clone $this->_query;
         $partsToBeRemoved = array('offset', 'limit', 'orderby');
         foreach ($partsToBeRemoved as $part) {
             $this->_countQuery->removeDqlQueryPart($part);
             $this->_countQuery->removeSqlQueryPart($part);
         }
     }
     return $this->_countQuery;
 }
 /**
  * Format the value returned from rec_query() into an array radix.
  *
  * @param Doctrine_Query $q
  * @return array $radix
  */
 protected function format_query_radix(Doctrine_Query $q)
 {
     $q2 = $q->copy()->select('org_id');
     $rs = $q2->fetchArray();
     // also select all parent orgs
     $ids = array();
     foreach ($rs as $org) {
         $parent_ids = Organization::get_org_parents($org['org_id']);
         $ids = array_merge($ids, $parent_ids);
         $ids[] = $org['org_id'];
     }
     $q->orWhereIn('o.org_id', $ids);
     $q->removeDqlQueryPart('limit');
     // now get the radix
     $this->_fields['org_parent_id'] = 1;
     $this->_fields['org_id'] = 1;
     $radix = parent::format_query_radix($q);
     // display organizations as a tree
     return $this->get_tree_data($radix);
 }
Esempio n. 4
0
 /**
  * Removes any limit in query
  *
  * @return Bvb_Grid_Source_Doctrine
  */
 public function resetLimit()
 {
     $this->_query->removeDqlQueryPart('limit');
     $this->_query->removeDqlQueryPart('offset');
     return $this;
 }