Commit a9817a03 authored by zYne's avatar zYne

new methods: addSelect() and addHaving()

parent e65f623a
...@@ -178,10 +178,11 @@ class Doctrine_Query extends Doctrine_Hydrate implements Countable { ...@@ -178,10 +178,11 @@ class Doctrine_Query extends Doctrine_Hydrate implements Countable {
} else { } else {
$e = explode('.', $reference); $e = explode('.', $reference);
if(count($e) > 2) if (count($e) > 2) {
$this->pendingFields[] = $reference; $this->pendingFields[] = $reference;
else } else {
$this->pendingFields[$e[0]][] = $e[1]; $this->pendingFields[$e[0]][] = $e[1];
}
} }
} }
} }
...@@ -468,6 +469,32 @@ class Doctrine_Query extends Doctrine_Hydrate implements Countable { ...@@ -468,6 +469,32 @@ class Doctrine_Query extends Doctrine_Hydrate implements Countable {
$this->params[] = $params; $this->params[] = $params;
} }
} }
/**
* addSelect
*
* @param string $select
*/
public function addSelect($select)
{
$this->type = self::SELECT;
$this->parseSelect($select);
return $this;
}
/**
* addHaving
*
* @param string $having
*/
public function addHaving($having)
{
$class = 'Doctrine_Query_Having';
$parser = new $class($this);
$this->parts['having'][] = $parser->parse($orderby);
return $this;
}
/** /**
* sets a query part * sets a query part
* *
...@@ -485,9 +512,9 @@ class Doctrine_Query extends Doctrine_Hydrate implements Countable { ...@@ -485,9 +512,9 @@ class Doctrine_Query extends Doctrine_Hydrate implements Countable {
case 'select': case 'select':
$this->type = self::SELECT; $this->type = self::SELECT;
if( ! isset($args[0])) if ( ! isset($args[0])) {
throw new Doctrine_Query_Exception('Empty select part'); throw new Doctrine_Query_Exception('Empty select part');
}
$this->parseSelect($args[0]); $this->parseSelect($args[0]);
break; break;
case 'delete': case 'delete':
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment