public function findMediaByCollectionId($collectionId, $limit, $offset)
{
$queryBuilder = $this->createQueryBuilder('media')->select('count(media.id) as counter')->join('media.collection', 'collection')->where('collection.id = :collectionId')->setParameter('collectionId', $collectionId);
$count = $queryBuilder->getQuery()->getSingleScalarResult();
$queryBuilder = $this->createQueryBuilder('media')->innerJoin('media.files', 'files')->innerJoin('files.fileVersions', 'versions', 'WITH', 'versions.version = files.version')->join('media.collection', 'collection')->where('collection.id = :collectionId')->setFirstResult($offset)->setMaxResults($limit)->setParameter('collectionId', $collectionId);
$query = $queryBuilder->getQuery();
$paginator = new Paginator($query);
return ['media' => $paginator, 'count' => $count];
}