Esempio n. 1
0
        public static async Task GetEpisodeMetadata(TvDbWrapper api, string seriesId, string seasonPath)
        {
            var fullRec = await api.GetSeriesFullRecord(seriesId).ConfigureAwait(false);

            var seasonName = new DirectoryInfo(seasonPath).Name;
            var seasonNo   = seasonName.Split(" ".ToCharArray())[1];
            var banners    = await api.GetArtwork(fullRec.Series.Id, BannerType.season).ConfigureAwait(false);

            await GetEpisodeMetadata(api, fullRec, seasonPath, banners, seasonNo).ConfigureAwait(false);
        }
Esempio n. 2
0
        public static async Task <IEnumerable <Episode> > GetEpisodes(TvDbWrapper api, string seasonPath)
        {
            var parent   = new DirectoryInfo(seasonPath).Parent;
            var seriesId = SeriesIOHelper.GetSeriesIdFromFile(parent.FullName);
            var fullRec  = await api.GetSeriesFullRecord(seriesId).ConfigureAwait(false);

            var seasonName = new DirectoryInfo(seasonPath).Name;
            var seasonNo   = seasonName.Split(" ".ToCharArray())[1];

            var seasonEpisodes = fullRec.Episodes.Where(ep => ep.CombinedSeason == seasonNo);

            return(seasonEpisodes);
        }
Esempio n. 3
0
        public static async Task GetSeriesInfo(TvDbWrapper api, string seriesPath, string seriesId, bool includeSeasons = false)
        {
            var fullRec = await api.GetSeriesFullRecord(seriesId).ConfigureAwait(false);

            var banners = await api.GetSeriesBanners(fullRec.Series.Id).ConfigureAwait(false);

            await SetSeriesData(api, seriesPath, fullRec, banners).ConfigureAwait(false);

            //then season data
            if (includeSeasons)
            {
                foreach (var seasonPath in Directory.EnumerateDirectories(seriesPath))
                {
                    var seasonName = new DirectoryInfo(seasonPath).Name;
                    var seasonNo   = seasonName.Split(" ".ToCharArray())[1];
                    await SeasonHelper.GetEpisodeMetadata(api, fullRec, seasonPath, banners, seasonNo).ConfigureAwait(false);
                }
            }
        }