Example #1
0
	/**
	 * Sets the default manager
	 *
	 * @param Atomik_Model_Manager $db
	 */
	public static function setDefault(Atomik_Model_Manager $manager = null)
	{
		if ($manager === null) {
			$manager = new self(Atomik_Db::getInstance());
		}
		self::$_default = $manager;
	}
Example #2
0
	/**
	 * Sets the manager associated to this builder
	 * 
	 * @param Atomik_Model_Manager $manager
	 */
	public function setManager(Atomik_Model_Manager $manager = null)
	{
		if ($manager === null) {
			$manager = Atomik_Model_Manager::getDefault();
		}
		$this->_manager = $manager;
	}
Example #3
0
	/**
	 * Returns the number of rows the query will return
	 *
	 * @param 	string|Atomik_Model_Builder|Atomik_Db_Query 	$builder
	 * @param 	array 											$where
	 * @param 	string 											$orderBy
	 * @param 	string|array									$limit
	 * @return 	Atomik_Model_Modelset
	 */
	public static function count($builder, $where = null, $orderBy = null, $limit = null)
	{
		if ($builder instanceof Atomik_Db_Query) {
			$query = clone $builder;
			$query->count();
			$builder = Atomik_Model_Manager::getBuilderFromQuery($query);
			return $builder->getManager()->getDbInstance()->count($query);
		}
		
		$query = self::buildQuery($builder, $where, $orderBy, $limit);
		return self::query($query->count(), $builder);
	}