public void RemoveBlackList(BlackListShow blackListShow) { var toRemove = context.BlackListShow.SingleOrDefault(b => b.Id == blackListShow.Id); if (toRemove != null) { context.BlackListShow.Remove(toRemove); context.SaveChanges(); } }
public void AddBlackList(BlackListShow blackListShow) { var exist = context.BlackListShow.Any(b => b.TraktShowId == blackListShow.TraktShowId && b.Season == blackListShow.Season && b.Entire == blackListShow.Entire); if (!exist) { context.BlackListShow.Add(new BlackListShowSqLite(blackListShow)); context.SaveChanges(); } }
private async Task RefreshHiddenItem() { var hiddenShow = await Client.Users.GetHiddenItemsAsync(TraktHiddenItemsSection.ProgressCollected, TraktHiddenItemType.Show).ConfigureAwait(false); TraktPagedResponse <ITraktUserHiddenItem> watchedRes = hiddenShow; foreach (ITraktUserHiddenItem traktUserHiddenItem in watchedRes) { var traktShow = traktUserHiddenItem.Show; // Store hidden season var show = new BlackListShow { TraktShowId = traktShow.Ids.Trakt, Entire = true, SerieName = traktShow.Title }; Database.AddBlackList(show); } }
public void RemoveBlackList(BlackListShow blackListShow) { BlackLists.Remove(blackListShow); }
public void AddBlackList(BlackListShow blackListShow) { BlackLists.Add(blackListShow); }
private async Task HandleProgress(TraktShow traktShow, List <BlackListShow> blackList) { // Remove Season blacklist traktShow.Seasons.RemoveAll(s => blackList.Any(b => b.TraktShowId == traktShow.Id && b.Season == s.Season)); if (traktShow.Seasons.Any()) { var collectionProgress = await Client.Shows.GetShowCollectionProgressAsync(traktShow.Id.ToString(), false, false, false).ConfigureAwait(false); var collectionProgressRes = collectionProgress; foreach (ITraktSeasonCollectionProgress season in collectionProgressRes.Value.Seasons) { var misSeason = traktShow.Seasons.SingleOrDefault(e => e.Season == season.Number); if (misSeason == null) { misSeason = new TraktSeason { Season = season.Number }; traktShow.Seasons.Add(misSeason); } foreach (ITraktEpisodeCollectionProgress episode in season.Episodes.Where(e => !e.Completed.HasValue || !e.Completed.Value)) { // Already existing in missing if (misSeason.MissingEpisodes.All(m => m.Episode != episode.Number)) { misSeason.MissingEpisodes.Add(new MissingEpisode { Episode = episode.Number }); } } } foreach (ITraktSeason season in collectionProgressRes.Value.HiddenSeasons) { TraktSeason traktSeason = traktShow.Seasons.SingleOrDefault(e => e.Season == season.Number); if (traktSeason != null) { // Store hidden season var show = new BlackListShow { TraktShowId = traktShow.Id, Season = season.Number, SerieName = traktShow.SerieName }; Database.AddBlackList(show); traktSeason.Hidden = true; } } foreach (var showSeason in traktShow.Seasons) { // Remove watched from missing showSeason.MissingEpisodes.RemoveAll(m => m.Watched); // Remove collected from missing showSeason.MissingEpisodes.RemoveAll(m => m.Collected); // BlackList Ended series if complete if ((traktShow.Status == TraktShowStatus.Ended || traktShow.Status == TraktShowStatus.Canceled) && !showSeason.MissingEpisodes.Any()) { // Store hidden season var show = new BlackListShow { TraktShowId = traktShow.Id, Season = showSeason.Season, SerieName = traktShow.SerieName }; Database.AddBlackList(show); } } traktShow.Seasons.RemoveAll(s => s.Hidden); traktShow.Seasons.RemoveAll(s => !s.MissingEpisodes.Any()); } }