async void ImportVideos() { ScreenTimeoutHelper.PreventTimeout(); Message.Text = "Collecting information about videos."; Bar.IsIndeterminate = true; var failedCount = 0; LocalMusicHelper localMusicHelper = new LocalMusicHelper(); var localVideos = await localMusicHelper.GetFilesInVideoAsync(); App.Locator.CollectionService.Videos.SuppressEvents = true; Bar.IsIndeterminate = false; await Task.Delay(10); Message.Text = "Working on video files."; Bar.Maximum = localVideos.Count; App.Locator.SqlService.BeginTransaction(); for (var i = 0; i < localVideos.Count; i++) { Bar.Value = i + 1; try { await localMusicHelper.SaveVideoAsync(localVideos[i]); } catch { failedCount++; } } App.Locator.SqlService.Commit(); App.Locator.CollectionService.Videos.Reset(); ScreenTimeoutHelper.AllowTimeout(); SheetUtility.CloseImportRefreshPage(); }
async void ImportMusic(bool importVideo = false) { ScreenTimeoutHelper.PreventTimeout(); Bar.IsIndeterminate = true; Message.Text = "Collecting information about music."; LocalMusicHelper localMusicHelper = new LocalMusicHelper(); var localMusic = await localMusicHelper.GetFilesInMusicAsync(); var failedCount = 0; Bar.IsIndeterminate = false; App.Locator.CollectionService.Songs.SuppressEvents = true; App.Locator.CollectionService.Artists.SuppressEvents = true; App.Locator.CollectionService.Albums.SuppressEvents = true; await Task.Delay(10); Message.Text = "Working on music files."; Bar.Maximum = localMusic.Count; App.Locator.SqlService.BeginTransaction(); for (var i = 0; i < localMusic.Count; i++) { Bar.Value = i + 1; try { await localMusicHelper.SaveTrackAsync(localMusic[i]); } catch { failedCount++; } } App.Locator.SqlService.Commit(); App.Locator.CollectionService.Songs.Reset(); App.Locator.CollectionService.Artists.Reset(); App.Locator.CollectionService.Albums.Reset(); if (importVideo) { if (App.Locator.Setting.SpotifyArtworkSync) { await DownloadArtworks.DownloadArtistsArtworkAsyncFromSpotify(); } else { await DownloadArtworks.DownloadArtistsArtworkAsync(); } await DownloadArtworks.DownloadAlbumsArtworkAsync(); ImportVideos(); } else { if (App.Locator.Setting.SpotifyArtworkSync) { await DownloadArtworks.DownloadArtistsArtworkAsyncFromSpotify(); } else { await DownloadArtworks.DownloadArtistsArtworkAsync(); } await DownloadArtworks.DownloadAlbumsArtworkAsync(); ScreenTimeoutHelper.AllowTimeout(); SheetUtility.CloseImportRefreshPage(); } App.Locator.HomePage.SongColletionChanged(); }