private void ButtonGetAllplaylists_Click(object sender, EventArgs e) { string temp; labelCurrentPlaylist.Visible = true; labelCurrentPlaylist.Text = "Waiting for user's data..."; if (!ExcelHandling.ObtainExcelFile()) { ExitForm(); } listBoxPlaylists.Items.Clear(); string channelID = textBoxChannelID.Text; YouTubePlaylist[] playLists = YouTubeAPI.GetPlaylists(channelID); playLists = playLists.OrderBy(c => c.title).ToArray(); for (int i = 0; i < playLists.Length; i++) { listBoxPlaylists.Items.Add((i + 1).ToString() + ": " + playLists[i].title); } progressBarDownloadRate.Maximum = playLists.Length - 1; progressBarDownloadRate.Minimum = 0; progressBarDownloadRate.Step = 1; for (int i = 0; i < playLists.Length; i++) { temp = listBoxPlaylists.Items[i].ToString() + " - SAVED"; GetPlaylistData(playLists[i]); progressBarDownloadRate.Value = i; listBoxPlaylists.Items[i] = temp; } if (myMissingVideos.Count() == 0) { MessageBox.Show("No missing videos at all playlists"); ExcelHandling.CloseFile(); } else { ExcelHandling.SaveMissingVideos(myMissingVideos); myMissingVideos.Clear(); MessageBox.Show("Process finished successfully.\n" + "A list of the Missing videos from all playlists appear at the last worksheet of the file"); } }
public void GetPlaylistData(YouTubePlaylist myPlaylist) { YouTubeVideo[] videos = YouTubeAPI.GetPlaylist(myPlaylist.id); // lists all titles of videos of a playlist (via each video ID) string missingVideoTitle; for (int i = 0; i < videos.Length; i++) { if (videos[i].title == null) { missingVideoTitle = ExcelHandling.SearchMissingVideo(i + 1, myPlaylist.title, videos.Length); MissingVideo missingVideo = new MissingVideo((i + 1).ToString() + ": " + missingVideoTitle, myPlaylist.title); myMissingVideos.Add(missingVideo); } } labelCurrentPlaylist.Visible = true; labelCurrentPlaylist.Text = "Currently Processing: " + myPlaylist.title; ExcelHandling.SaveCurrentPlaylistToSheet(myPlaylist.title, videos); labelCurrentPlaylist.Visible = false; }