public async Task GetGameCategories(string gameID) { Categories = new BindableCollection <CategoryViewModel>(); foreach (Category c in gameSelected.categories) { CategoryViewModel cat = new CategoryViewModel(c); foreach (Playlist p in c.playlists) { PlaylistViewModel pvm = new PlaylistViewModel(p); cat.Playlists.Add(pvm); pvm.FetchClips = pvm.FetchClipsAndHeaders(); } if (c.playlists != null && c.playlists.Count() != 0) { Categories.Add(cat); } } ProgressRingVisibility = Visibility.Collapsed; ProgressRingIsActive = false; MarkDownloadedPlaylists(); if (Categories.Count == 0) { NoPlaylistText = "There are no playlists for this entry"; } else { NoPlaylistText = ""; } }
public async void PlaylistSelected(ItemClickEventArgs eventArgs) { ProgressRingIsActive = true; ProgressRingVisibility = Visibility.Visible; PageIsEnabled = false; PlaylistViewModel vmClicked = (PlaylistViewModel)eventArgs.ClickedItem; Playlist playlistClicked = vmClicked.PlaylistModel; Playlist matchingDownload = DownloadAccessor.Instance.downloadedPlaylists.Where(u => u.playlistId == playlistClicked.playlistId).FirstOrDefault(); if (matchingDownload != null) { navigationService.NavigateToViewModel <VideoPlayerViewModel>(new PageParameter { playlist = matchingDownload, hubGroups = Parameter.hubGroups, season = Parameter.season }); } else { await vmClicked.FetchClips; navigationService.NavigateToViewModel <VideoPlayerViewModel>(new PageParameter { playlist = playlistClicked, hubGroups = Parameter.hubGroups, season = Parameter.season }); } Logger.Instance.LogPlaylistSelected(((PlaylistViewModel)eventArgs.ClickedItem).PlaylistModel); }
public async Task GetGameCategories(string gameID) { Categories = new BindableCollection<CategoryViewModel>(); foreach (Category c in gameSelected.categories) { CategoryViewModel cat = new CategoryViewModel(c); foreach (Playlist p in c.playlists) { PlaylistViewModel pvm = new PlaylistViewModel(p); cat.Playlists.Add(pvm); pvm.FetchClips = pvm.FetchClipsAndHeaders(); } if (c.playlists != null && c.playlists.Count() != 0) { Categories.Add(cat); } } ProgressRingVisibility = Visibility.Collapsed; ProgressRingIsActive = false; MarkDownloadedPlaylists(); if (Categories.Count == 0) { NoPlaylistText = "There are no playlists for this entry"; } else { NoPlaylistText = ""; } }
private void CategoriesGridView_SelectionChanged(object sender, SelectionChangedEventArgs e) { categoriesGrid = (GridView)sender; PlaylistViewModel playlistAdded = (PlaylistViewModel)e.AddedItems.FirstOrDefault(); if (DownloadAccessor.Instance.Downloading) { if (categoriesGrid.SelectedItems.Count >= 1) { if (playlistAdded != null) { if (playlistAdded.DownloadedIcon_Visibility == Visibility.Visible) { DeleteButton_Visibility = Visibility.Visible; playlistsSelected = categoriesGrid.SelectedItems.ToList(); } else { categoriesGrid.SelectedItems.Remove(e.AddedItems[0]); } } } AppBarOpen = true; } else { if (categoriesGrid.SelectedItems.Count == 0) { DownloadButton_Visibility = Visibility.Collapsed; Downloading_Visibility = Visibility.Collapsed; DeleteButton_Visibility = Visibility.Collapsed; } if (categoriesGrid.SelectedItems.Count == 1 && playlistAdded != null) { if (playlistAdded.DownloadedIcon_Visibility == Visibility.Visible) { DownloadButton_Visibility = Visibility.Collapsed; Downloading_Visibility = Visibility.Collapsed; DeleteButton_Visibility = Visibility.Visible; } else { DownloadButton_Visibility = Visibility.Visible; Downloading_Visibility = Visibility.Collapsed; DeleteButton_Visibility = Visibility.Collapsed; } } if (categoriesGrid.SelectedItems.Count > 1) { PlaylistViewModel firstPlaylist = (PlaylistViewModel)playlistsSelected.ElementAt(0); if (playlistAdded != null) { if (playlistAdded.DownloadedIcon_Visibility != firstPlaylist.DownloadedIcon_Visibility) { categoriesGrid.SelectedItems.Remove(e.AddedItems[0]); } } } playlistsSelected = categoriesGrid.SelectedItems.ToList(); AppBarOpen = playlistsSelected.Any() ? true : false; } }