internal static void RemoveEpisodeFromWatchHistory(TraktShow show, TraktEpisode episode)
{
if (_WatchedEpisodes == null || show.Ids == null)
return;
var watchedEpisodes = _WatchedEpisodes.ToList();
watchedEpisodes.RemoveAll(e => (((e.ShowId == show.Ids.Trakt) && e.ShowId != null) || ((e.ShowTvdbId == show.Ids.Tvdb) && e.ShowTvdbId != null)) &&
e.Season == episode.Season &&
e.Number == episode.Number);
// remove using Title + Year
if (show.Ids.Trakt == null && show.Ids.Tvdb == null)
{
watchedEpisodes.RemoveAll(e => e.ShowTitle.ToLowerInvariant() == show.Title.ToLowerInvariant() && e.ShowYear == show.Year &&
e.Season == episode.Season &&
e.Number == episode.Number);
}
_WatchedEpisodes = watchedEpisodes;
}