protected function getContentInfoList(Criterion $filter, $sort, $offset, $limit, array $languageFilter)
{
$query = $this->handler->createSelectQuery();
$query->selectDistinct('ezcontentobject.*', $this->handler->aliasedColumn($query, 'main_node_id', 'main_tree'));
if ($sort !== null) {
$this->sortClauseConverter->applySelect($query, $sort);
}
$query->from($this->handler->quoteTable('ezcontentobject'))->innerJoin('ezcontentobject_version', 'ezcontentobject.id', 'ezcontentobject_version.contentobject_id')->leftJoin($this->handler->alias($this->handler->quoteTable('ezcontentobject_tree'), $this->handler->quoteIdentifier('main_tree')), $query->expr->lAnd($query->expr->eq($this->handler->quoteColumn('contentobject_id', 'main_tree'), $this->handler->quoteColumn('id', 'ezcontentobject')), $query->expr->eq($this->handler->quoteColumn('main_node_id', 'main_tree'), $this->handler->quoteColumn('node_id', 'main_tree'))));
if ($sort !== null) {
$this->sortClauseConverter->applyJoin($query, $sort, $languageFilter);
}
$query->where($this->getQueryCondition($filter, $query, $languageFilter));
if ($sort !== null) {
$this->sortClauseConverter->applyOrderBy($query);
}
$query->limit($limit, $offset);
$statement = $query->prepare();
$statement->execute();
return $statement->fetchAll(PDO::FETCH_ASSOC);
}