/** * @param int $eventId * @param string $locale * @param bool $useDoctrine * @return Event * @throws \Sulu\Bundle\MediaBundle\Media\Exception\MediaNotFoundException */ public function findByIdAndLocale($eventId, $locale, $useDoctrine = false) { $event = $this->eventRepository->findByIdAndLocale($eventId, $locale); if ($event) { $event = new $this->eventApiEntity($event, $locale); $media = []; foreach ($event->getEntity()->getMedia() as $medium) { if ($useDoctrine) { $media[] = $this->mediaManager->getbyId($medium->getId(), $locale); } else { $media['ids'][] = $medium->getId(); } } $event->setMedia($media); return $event; } return null; }