protected override void DidActivate(bool firstActivation, ActivationType activationType) { if (firstActivation && activationType == ActivationType.AddedToHierarchy) { title = "Playlists"; _playlistsNavigationController.didFinishEvent += _playlistsNavigationController_didFinishEvent; _playlistListViewController = BeatSaberUI.CreateViewController <PlaylistListViewController>(); _playlistListViewController.didSelectRow += _playlistListViewController_didSelectRow; _playlistDetailViewController.downloadButtonPressed += _playlistDetailViewController_downloadButtonPressed; _playlistDetailViewController.selectButtonPressed += _playlistDetailViewController_selectButtonPressed; _playlistDetailViewController.SetSelectButtonText("Select"); _downloadQueueViewController = BeatSaberUI.CreateViewController <DownloadQueueViewController>(); SetViewControllersToNavigationConctroller(_playlistsNavigationController, new VRUIViewController[] { _playlistListViewController }); ProvideInitialViewControllers(_playlistsNavigationController, _downloadQueueViewController, null); } _downloadingPlaylist = false; _playlistListViewController.SetContent(PlaylistsCollection.loadedPlaylists); _downloadQueueViewController.allSongsDownloaded += _downloadQueueViewController_allSongsDownloaded; }
public IEnumerator GetPlaylists() { yield return(null); _loadingIndicator.SetActive(true); _playlistsListViewController.SetContent(null); UnityWebRequest www = UnityWebRequest.Get(playlistAPI_URL); www.timeout = 15; yield return(www.SendWebRequest()); if (www.isNetworkError || www.isHttpError) { Logger.Error($"Unable to connect to BeastSaber playlist API! " + (www.isNetworkError ? $"Network error: {www.error}" : (www.isHttpError ? $"HTTP error: {www.error}" : "Unknown error"))); _loadingIndicator.SetActive(false); } else { try { JSONNode node = JSON.Parse(www.downloadHandler.text); playlists.Clear(); for (int i = 0; i < node.Count; i++) { playlists.Add(new Playlist(node[i])); } _loadingIndicator.SetActive(false); _playlistsListViewController.SetContent(playlists); } catch (Exception e) { Logger.Exception("Unable to parse response! Exception: " + e); _loadingIndicator.SetActive(false); } } }
protected override void DidActivate(bool firstActivation, ActivationType activationType) { if (firstActivation) { title = "Playlists"; _playlistListViewController = BeatSaberUI.CreateViewController <PlaylistListViewController>(); _playlistListViewController.didSelectRow += _playlistListViewController_didSelectRow; _downloadQueueViewController = BeatSaberUI.CreateViewController <DownloadQueueViewController>(); SetViewControllersToNavigationConctroller(_playlistsNavigationController, new VRUIViewController[] { _playlistListViewController }); ProvideInitialViewControllers(_playlistsNavigationController, _downloadQueueViewController, null); } _downloadingPlaylist = false; _playlistListViewController.SetContent(PlaylistsCollection.loadedPlaylists); _downloadQueueViewController.allSongsDownloaded += _downloadQueueViewController_allSongsDownloaded; }