mirror of
https://github.com/Readarr/Readarr.git
synced 2026-04-21 22:04:31 -04:00
Fixed: Refreshing anime series won't cause an error
This commit is contained in:
@@ -160,12 +160,13 @@ namespace NzbDrone.Core.MetadataSource
|
||||
return series;
|
||||
}
|
||||
|
||||
private static Tv.Episode MapEpisode(TVDBSharp.Models.Episode traktEpisode)
|
||||
private static Episode MapEpisode(TVDBSharp.Models.Episode traktEpisode)
|
||||
{
|
||||
var episode = new Tv.Episode();
|
||||
var episode = new Episode();
|
||||
episode.Overview = traktEpisode.Description;
|
||||
episode.SeasonNumber = traktEpisode.SeasonNumber;
|
||||
episode.EpisodeNumber = traktEpisode.EpisodeNumber;
|
||||
episode.AbsoluteEpisodeNumber = traktEpisode.AbsoluteEpisodeNumber;
|
||||
episode.Title = traktEpisode.Title;
|
||||
|
||||
if (traktEpisode.FirstAired != null)
|
||||
|
||||
@@ -1,52 +0,0 @@
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Xml.Linq;
|
||||
using NzbDrone.Common.Extensions;
|
||||
using NzbDrone.Common.Http;
|
||||
using NzbDrone.Core.Indexers;
|
||||
using NzbDrone.Core.Tv;
|
||||
|
||||
namespace NzbDrone.Core.MetadataSource.Tvdb
|
||||
{
|
||||
public interface ITvdbProxy
|
||||
{
|
||||
List<Episode> GetEpisodeInfo(int tvdbSeriesId);
|
||||
}
|
||||
|
||||
public class TvdbProxy : ITvdbProxy
|
||||
{
|
||||
private readonly IHttpClient _httpClient;
|
||||
|
||||
public TvdbProxy(IHttpClient httpClient)
|
||||
{
|
||||
_httpClient = httpClient;
|
||||
}
|
||||
|
||||
public List<Episode> GetEpisodeInfo(int tvdbSeriesId)
|
||||
{
|
||||
var httpRequest = new HttpRequest("http://thetvdb.com/data/series/{tvdbId}/all/");
|
||||
httpRequest.AddSegment("tvdbId", tvdbSeriesId.ToString());
|
||||
var response = _httpClient.Get(httpRequest);
|
||||
|
||||
var xml = XDocument.Load(new StringReader(response.Content));
|
||||
var episodes = xml.Descendants("Episode").Select(MapEpisode).ToList();
|
||||
return episodes;
|
||||
}
|
||||
|
||||
private static Episode MapEpisode(XElement item)
|
||||
{
|
||||
//TODO: We should map all the data incase we want to actually use it
|
||||
var episode = new Episode();
|
||||
episode.SeasonNumber = item.TryGetValue("SeasonNumber", 0);
|
||||
episode.EpisodeNumber = item.TryGetValue("EpisodeNumber", 0);
|
||||
|
||||
if (item.TryGetValue("absolute_number").IsNotNullOrWhiteSpace())
|
||||
{
|
||||
episode.AbsoluteEpisodeNumber = item.TryGetValue("absolute_number", 0);
|
||||
}
|
||||
|
||||
return episode;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user