Example #1
0
 public function addLeftJoin($tableName, $field1, $field2)
 {
     $prefix = Config::get("DB_PREFIX");
     $this->leftJoins[] = array($prefix . strtolower($tableName), Criteria::addPrefixToValueName($field1), Criteria::addPrefixToValueName($field2));
     return $this;
 }
Example #2
0
 /**
  * Find all rows row in database matching criteria and return it
  * @param Criteria $criteria Criteria object contain search filters
  * @param string $fields Row fields which will be returned
  * @return array
  */
 public function findAll(Criteria $criteria = null, $fields = "*", $returnModelRecords = false)
 {
     $fields = Criteria::addPrefixToValueName($fields);
     if (!$criteria) {
         $criteria = new Criteria();
     }
     $sql = $this->prepareCriteriaQuery($criteria, $fields);
     $results = $this->db->sqlGetAll($sql);
     if ($criteria->getCalcFoundRows()) {
         $this->saveFoundRowsCount();
     }
     if (empty($results)) {
         return array();
     }
     if (!$returnModelRecords) {
         return $results;
     }
     $modelRecords = array();
     foreach ($results as $data) {
         if ($criteria->keyArray) {
             $pk = $data[$this->getPrimaryKey()];
             $modelRecords[$pk] = $this->populateObject($data);
         } else {
             $modelRecords[] = $this->populateObject($data);
         }
     }
     return $modelRecords;
 }