private static void OnBroadcastCreated(SharkEvent p_SharkEvent) { CreatingBroadcast = false; QueueManager.FetchCollectionSongs(); QueueManager.ClearHistory(); // Add two random songs to the collection. if (Application.Library.Queue.CurrentQueue.Count < 2) { var s_ModuleSongs = ModuleManager.OnFetchingNextSongs(2); if (s_ModuleSongs != null && s_ModuleSongs.Count > 0) { var s_First = s_ModuleSongs.First(); Application.Library.Broadcast.PlaySong(s_First.Key, s_First.Value); return; } var s_Random = new Random(); var s_FirstSongIndex = s_Random.Next(0, QueueManager.CollectionSongs.Count); var s_SecondSongIndex = s_Random.Next(0, QueueManager.CollectionSongs.Count); var s_FirstSong = QueueManager.CollectionSongs[s_FirstSongIndex]; var s_SecondSong = QueueManager.CollectionSongs[s_SecondSongIndex]; while (s_SecondSong == s_FirstSong) { s_SecondSongIndex = s_Random.Next(0, QueueManager.CollectionSongs.Count); s_SecondSong = QueueManager.CollectionSongs[s_SecondSongIndex]; } var s_QueueIDs = Application.Library.Broadcast.AddSongs(new List <Int64> { s_FirstSong, s_SecondSong }); if (Application.Library.Broadcast.PlayingSongID == 0) { Application.Library.Broadcast.PlaySong(s_FirstSong, s_QueueIDs[s_FirstSong]); } } else if (Application.Library.Broadcast.PlayingSongID == 0) { var s_ModuleSongs = ModuleManager.OnFetchingNextSongs(1); if (s_ModuleSongs != null && s_ModuleSongs.Count > 0) { var s_First = s_ModuleSongs.First(); Application.Library.Broadcast.PlaySong(s_First.Key, s_First.Value); return; } var s_Random = new Random(); var s_SongIndex = s_Random.Next(0, QueueManager.CollectionSongs.Count); var s_FirstSong = QueueManager.CollectionSongs[s_SongIndex]; var s_QueueIDs = Application.Library.Broadcast.AddSongs(new List <Int64> { s_FirstSong }); Application.Library.Broadcast.PlaySong(s_FirstSong, s_QueueIDs[s_FirstSong]); } else if (Application.Library.Broadcast.PlayingSongID != 0) { QueueManager.UpdateQueue(); } // Disable mobile compliance if needed. if (!SettingsManager.MobileCompliance()) { DisableMobileCompliance(); } }