Newscoop\Services\PlaylistsService::updateThemePlaylists PHP Метод

updateThemePlaylists() публичный Метод

Update playists with current theme playlists definitions.
public updateThemePlaylists ( Theme $theme, array $themePlaylists ) : boolean
$theme Theme
$themePlaylists array
Результат boolean
    public function updateThemePlaylists($theme, $themePlaylists)
    {
        $newThemePlaylists = $this->buildNewThemePlaylists($themePlaylists);
        foreach ($newThemePlaylists as $playlistName => $themePlaylist) {
            $playlist = $this->em->getRepository('Newscoop\\Entity\\Playlist')->getPlaylistByTitle($playlistName)->getOneOrNullResult();
            if (!$playlist) {
                $playlist = new Playlist();
                $playlist->setName($playlistName);
                $this->em->persist($playlist);
            }
            $themes = $playlist->getThemes();
            $themes[$theme->getId()] = $themePlaylist['templates'];
            $playlist->setThemes($themes);
        }
        $this->em->flush();
        return true;
    }