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(); } $clients = array(); while ($row = $result->fetchRow()) { $client = new Client(); $value = $row[0]; $client->setId($value); $value = $row[1]; $client->setPid($value); $value = $row[2]; $client->setName($value); $value = $row[3]; $client->setEmail($value); $value = $row[4]; $client->setTelephone($value); $value = $row[5]; $client->setCustomer($value); $value = $row[6]; $client->setComment($value); $value = $row[7]; $value = $this->database->toBoolean($value); $client->setActive($value); $value = $row[8]; $value = $this->database->toBoolean($value); $client->setEnded($value); $value = $row[9]; $value = $this->database->toBoolean($value); $client->setEnded_eve($value); $value = $row[10]; $value = $this->database->toBoolean($value); $client->setMoved($value); $value = $row[11]; $value = $this->database->toBoolean($value); $client->setPeriodical($value); $value = $row[12]; $client->setPeriodicalid($value); $value = $row[13]; $value = $this->database->toBoolean($value); $client->setCan_create($value); $value = $row[14]; $client->setR_date($value); $value = $row[15]; $client->setR_user($value); if ($order != null) { array_push($clients, $client); } else { $clients[$client->getId()] = $client; } } return $clients; }