protected override void DoCheck(SetProgressDelegate prog, TVDoc.ScanSettings settings) { BulkAddSeriesManager bam = new BulkAddSeriesManager(MDoc); bam.CheckFolders(settings.Token, prog, false, !settings.Unattended); AskUserAboutShows(settings, bam); if (!bam.AddItems.Any(s => s.CodeKnown)) { return; } var idsToAdd = bam.AddItems.Where(s => s.CodeKnown).Select(folder => new { Code = folder.ProviderCode, folder.Provider }).ToList(); bam.AddAllToMyShows(); List <ShowConfiguration> addedShows = idsToAdd.Select(s => MDoc.TvLibrary.GetShowItem(s.Code, s.Provider)).ToList(); //add each new show into the shows being scanned foreach (ShowConfiguration si in addedShows) { settings.Shows.Add(si); } LOGGER.Info("Added new shows called: {0}", addedShows.Select(si => si.ShowName).ToCsv()); MDoc.TvAddedOrEdited(true, settings.Unattended, settings.Hidden, settings.Owner, addedShows); }
protected override void DoCheck(SetProgressDelegate prog, TVDoc.ScanSettings settings) { //for each directory in settings directory //for each file in directory //for each saved show (order by recent) //does show match selected file? //if so add cachedSeries to list of cachedSeries scanned if (!Active()) { LOGGER.Info("Not looking for new media as 'Auto-Add' is turned off"); return; } //Don't support unattended mode if (settings.Unattended || settings.Hidden) { LOGGER.Info("Not looking for new media as app is unattended"); return; } IEnumerable <FileInfo> possibleShowNames = GetPossibleShowNameStrings(); List <MediaConfiguration> addedShows = FinderHelper.FindMedia(possibleShowNames, MDoc, settings.Owner); IEnumerable <ShowConfiguration> addedTvShows = addedShows.OfType <ShowConfiguration>(); if (addedTvShows.Any()) { MDoc.TvLibrary.AddRange(addedTvShows); MDoc.TvAddedOrEdited(true, false, false, settings.Owner, addedTvShows); //add each new show into the shows being scanned foreach (ShowConfiguration si in addedTvShows) { settings.Shows.Add(si); } LOGGER.Info("Added new shows called: {0}", addedTvShows.Select(s => s.ShowName).ToCsv()); } IEnumerable <MovieConfiguration> addedMovies = addedShows.OfType <MovieConfiguration>(); if (addedMovies.Any()) { MDoc.FilmLibrary.AddRange(addedMovies); MDoc.MoviesAddedOrEdited(true, false, false, settings.Owner, addedMovies); foreach (MovieConfiguration si in addedMovies) { settings.Movies.Add(si); } LOGGER.Info("Added new movies called: {0}", addedMovies.Select(s => s.ShowName).ToCsv()); } }