*/ final class StationPlaylistRepository extends AbstractStationBasedRepository { /** * @return Entity\StationPlaylist[] */ public function getAllForStation(Entity\Station $station): array { return $this->repository->findBy([ 'station' => $station, ]); } public function stationHasActivePlaylists(Entity\Station $station): bool { foreach ($station->getPlaylists() as $playlist) { if (!$playlist->getIsEnabled()) { continue; } if (Entity\Enums\PlaylistSources::RemoteUrl === $playlist->getSourceEnum()) { return true; } $mediaCount = $this->em->createQuery( <<setParameter('station', $station) ->getSingleScalarResult(); if ($mediaCount > 0) { return true; } } return false; } }