/** * Returns the builder from a db query * * @param Atomik_Db_Query $query * @return Atomik_Model_Builder */ public static function getBuilderFromQuery(Atomik_Db_Query $query) { $from = $query->getInfo('from'); if (count($from) > 1) { require_once 'Atomik/Model/Manager/Exception.php'; throw new Atomik_Model_Manager_Exception('Only one table can be used in the FROM clause with Atomik_Model_Manager'); } $tableName = substr($from[0]['table'], strlen($query->getInstance()->getTablePrefix())); // remove the table prefix return Atomik_Model_Builder_Factory::getFromTableName($tableName); }