public async Task SearchByFile() { try { IsLoading = true; SearchResult = await SubtitleClient.SearchSubtitlesFromFile(Language, FilePath); } finally { IsLoading = false; } }
public async Task SearchByImdbId() { try { IsLoading = true; SearchResult = await SubtitleClient.SearchSubtitlesFromImdb(Language, ImdbId, SeasonNumber, EpisodeNumber); } finally { IsLoading = false; } }
public async Task SearchByName() { try { IsLoading = true; SearchResult = await SubtitleClient.SearchSubtitlesFromQuery(Language, Name, SeasonNumber, EpisodeNumber); } finally { IsLoading = false; } }
public async Task Download(Subtitle subtitle) { string path = null; if (!String.IsNullOrWhiteSpace(FilePath)) { string folderPath = Path.GetDirectoryName(FilePath); if (Directory.Exists(folderPath)) { path = folderPath; } } else if (!String.IsNullOrWhiteSpace(LocalPath)) { if (Directory.Exists(LocalPath)) { path = LocalPath; } } SaveFileDialogService.Filter = SubtitleFilter; if (SaveFileDialogService.ShowDialog(null, path, subtitle.SubtitleFileName)) { try { await SubtitleClient.DownloadSubtitleToPath(SaveFileDialogService.File.DirectoryName, subtitle, SaveFileDialogService.SafeFileName()); } catch (Exception e) { Journal.WriteError(e); MessageViewModel viewModel = MessageViewModel.FromException(e); Messenger.Default.Send(viewModel); } } }
public SubtitleSearchViewModel() { SubtitleClient = new SubtitleClient(); Language = Properties.Resources.Culture.ThreeLetterISOLanguageName; }