public function getChatMessages(ChatMessageFilter $filter = null, MysqlPager $pager = null, $cacheMinutes = 0) { $chatMessages = array(); if ($filter == null) { $filter = new ChatMessageFilter(); } $sqlQuery = $filter->getSQL(); if ($pager !== null) { $this->query = $pager->executePagedSQL($sqlQuery, $cacheMinutes); } else { $this->query->exec($sqlQuery, $cacheMinutes); } if ($this->query->countRecords()) { while (($messageRow = $this->query->fetchRecord()) != null) { array_push($chatMessages, $this->getChatMessage($messageRow)); } } return $chatMessages; }