Returns the number of media contained in a given collection.
public countMedia ( Sulu\Bundle\MediaBundle\Entity\CollectionInterface $collection ) : integer | ||
$collection | Sulu\Bundle\MediaBundle\Entity\CollectionInterface | The collection for which the number of media should be returned |
Результат | integer | The number of media in the given collection |
/** * Prepare an api entity. * * @param CollectionInterface $entity * @param string $locale * @param CollectionEntity[] $entities nested set * @param array $breadcrumbEntities * * @return Collection */ protected function getApiEntity(CollectionInterface $entity, $locale, $entities = null, $breadcrumbEntities = null) { $apiEntity = new Collection($entity, $locale); $children = []; if ($entities !== null) { foreach ($entities as $possibleChild) { if (($parent = $possibleChild->getParent()) !== null && $parent->getId() === $entity->getId()) { $children[] = $this->getApiEntity($possibleChild, $locale, $entities); } } } $apiEntity->setChildren($children); if ($entity->getParent() !== null) { $apiEntity->setParent($this->getApiEntity($entity->getParent(), $locale)); } if ($breadcrumbEntities !== null) { $breadcrumbApiEntities = []; foreach ($breadcrumbEntities as $entity) { $breadcrumbApiEntities[] = $this->getApiEntity($entity, $locale); } $apiEntity->setBreadcrumb($breadcrumbApiEntities); } if ($entity && $entity->getId()) { $apiEntity->setMediaCount($this->collectionRepository->countMedia($entity)); $apiEntity->setSubCollectionCount($this->collectionRepository->countSubCollections($entity)); } return $this->addPreview($apiEntity); }