function find($criteria = null, $order = null, $limit = 1000, $from = 0) { $result = $this->database->query($this->buildFindQuery($criteria, $order, $limit, $from)); if (!is_null($result->getError())) { return $result->getError(); } $partners = array(); while ($row = $result->fetchRow()) { $partner = new Partner(); $value = $row[0]; $partner->setId($value); $value = $row[1]; $partner->setPid($value); $value = $row[2]; $partner->setName($value); $value = $row[3]; $partner->setEmail($value); $value = $row[4]; $partner->setTelephone($value); $value = $row[5]; $partner->setCommission($value); $value = $row[6]; $value = $this->database->toBoolean($value); $partner->setCan_create($value); $value = $row[7]; $partner->setR_date($value); $value = $row[8]; $partner->setR_user($value); if ($order != null) { array_push($partners, $partner); } else { $partners[$partner->getId()] = $partner; } } return $partners; }