private void AddRule(PossibleMergedEpisode selected, ShowConfiguration si, ListViewItem lastClicked) { ShowRule sr = selected.GenerateRule(); si.AddSeasonRule(selected.SeasonNumber, sr); lvMergedEpisodes.Items.Remove(lastClicked); dupEps.Remove(selected); }
private void olvDuplicates_CellRightClick(object sender, CellRightClickEventArgs e) { if (e.Model is null) { return; } possibleMergedEpisodeRightClickMenu.Items.Clear(); if (olvDuplicates.SelectedObjects.Count == 1) { SettingsCheck mlastSelected = (SettingsCheck)e.Model; if (mlastSelected is MovieCheck mcheck) { MovieConfiguration si = mcheck.Movie; AddRcMenuItem("Force Refresh", (o, args) => mainUi.ForceMovieRefresh(new List <MovieConfiguration> { si }, false)); AddRcMenuItem("Edit Movie", (o, args) => mainUi.EditMovie(si)); possibleMergedEpisodeRightClickMenu.Items.Add(new ToolStripSeparator()); foreach (string?f in si.Locations) { AddRcMenuItem("Visit " + f, (o, args) => Helpers.OpenFolder(f)); } } else if (mlastSelected is TvShowCheck tcheck) { ShowConfiguration si = tcheck.Show; AddRcMenuItem("Force Refresh", (o, args) => mainUi.ForceRefresh(new List <ShowConfiguration> { si }, false)); AddRcMenuItem("Edit TV Show", (o, args) => mainUi.EditShow(si)); } possibleMergedEpisodeRightClickMenu.Items.Add(new ToolStripSeparator()); AddRcMenuItem("Fix Issue", (o, args) => Remedy(mlastSelected)); } else { AddRcMenuItem("Fix Issues", (o, args) => { foreach (SettingsCheck?selected in olvDuplicates.SelectedObjects.OfType <SettingsCheck>()) { Remedy(selected); } mDoc.SetDirty(); }); } }
private void AddToLibrary(int mlastSelectedKey, TVDoc tvDoc) { switch (media) { case MediaConfiguration.MediaType.tv: ShowConfiguration show = new ShowConfiguration(mlastSelectedKey, TVDoc.ProviderType.TMDB); tvDoc.Add(show); break; case MediaConfiguration.MediaType.movie: MovieConfiguration newMovie = new MovieConfiguration(mlastSelectedKey, TVDoc.ProviderType.TMDB); tvDoc.Add(newMovie); break; default: throw new ArgumentOutOfRangeException(); } }
private void AddRecommendationsFrom(ShowConfiguration arg, Recomendations returnValue) { if (arg.TmdbCode == 0) { string?imdb = arg.CachedShow?.Imdb; if (!imdb.HasValue()) { return; } int?tmdbcode = LookupTvbdIdByImdb(imdb !, false); if (!tmdbcode.HasValue) { return; } arg.TmdbCode = tmdbcode.Value; } Task <SearchContainer <SearchTv> >?related = Client.GetTvShowRecommendationsAsync(arg.TmdbCode); Task <SearchContainer <SearchTv> >?similar = Client.GetTvShowSimilarAsync(arg.TmdbCode); Task.WaitAll(related, similar); if (related.Result != null) { foreach (var s in related.Result.Results) { File(s); returnValue.AddRelated(s.Id, arg); } } if (similar.Result != null) { foreach (var s in similar.Result.Results) { File(s); returnValue.AddSimilar(s.Id, arg); } } }
public static string WebsiteShowUrl([NotNull] ShowConfiguration si) { string?value = si.CachedShow?.Slug; return(string.IsNullOrWhiteSpace(value) ? WebsiteShowUrl(si.TvdbCode) : WebsiteShowUrl(value)); }
protected TvShowCheck(ShowConfiguration show, TVDoc doc) : base(doc) { Show = show; }
protected TvShowCheck(ShowConfiguration show) { Show = show; }