support plex media with missing release date (#76)

This commit is contained in:
Jason Dove
2021-03-14 17:32:49 +00:00
committed by GitHub
parent e9b26d6bdb
commit 8b1f8dd36b
@@ -172,7 +172,6 @@ namespace ErsatzTV.Infrastructure.Plex
Title = response.Title, Title = response.Title,
SortTitle = _fallbackMetadataProvider.GetSortTitle(response.Title), SortTitle = _fallbackMetadataProvider.GetSortTitle(response.Title),
Plot = response.Summary, Plot = response.Summary,
ReleaseDate = DateTime.Parse(response.OriginallyAvailableAt),
Year = response.Year, Year = response.Year,
Tagline = response.Tagline, Tagline = response.Tagline,
DateAdded = dateAdded, DateAdded = dateAdded,
@@ -180,6 +179,11 @@ namespace ErsatzTV.Infrastructure.Plex
Genres = Optional(response.Genre).Flatten().Map(g => new Genre { Name = g.Tag }).ToList() Genres = Optional(response.Genre).Flatten().Map(g => new Genre { Name = g.Tag }).ToList()
}; };
if (DateTime.TryParse(response.OriginallyAvailableAt, out DateTime releaseDate))
{
metadata.ReleaseDate = releaseDate;
}
if (!string.IsNullOrWhiteSpace(response.Thumb)) if (!string.IsNullOrWhiteSpace(response.Thumb))
{ {
var path = $"plex/{mediaSourceId}{response.Thumb}"; var path = $"plex/{mediaSourceId}{response.Thumb}";
@@ -269,7 +273,6 @@ namespace ErsatzTV.Infrastructure.Plex
Title = response.Title, Title = response.Title,
SortTitle = _fallbackMetadataProvider.GetSortTitle(response.Title), SortTitle = _fallbackMetadataProvider.GetSortTitle(response.Title),
Plot = response.Summary, Plot = response.Summary,
ReleaseDate = DateTime.Parse(response.OriginallyAvailableAt),
Year = response.Year, Year = response.Year,
Tagline = response.Tagline, Tagline = response.Tagline,
DateAdded = dateAdded, DateAdded = dateAdded,
@@ -277,6 +280,11 @@ namespace ErsatzTV.Infrastructure.Plex
Genres = Optional(response.Genre).Flatten().Map(g => new Genre { Name = g.Tag }).ToList() Genres = Optional(response.Genre).Flatten().Map(g => new Genre { Name = g.Tag }).ToList()
}; };
if (DateTime.TryParse(response.OriginallyAvailableAt, out DateTime releaseDate))
{
metadata.ReleaseDate = releaseDate;
}
if (!string.IsNullOrWhiteSpace(response.Thumb)) if (!string.IsNullOrWhiteSpace(response.Thumb))
{ {
var path = $"plex/{mediaSourceId}{response.Thumb}"; var path = $"plex/{mediaSourceId}{response.Thumb}";
@@ -388,9 +396,9 @@ namespace ErsatzTV.Infrastructure.Plex
DateUpdated = lastWriteTime DateUpdated = lastWriteTime
}; };
if (!string.IsNullOrWhiteSpace(response.OriginallyAvailableAt)) if (DateTime.TryParse(response.OriginallyAvailableAt, out DateTime releaseDate))
{ {
metadata.ReleaseDate = DateTime.Parse(response.OriginallyAvailableAt); metadata.ReleaseDate = releaseDate;
} }
if (!string.IsNullOrWhiteSpace(response.Thumb)) if (!string.IsNullOrWhiteSpace(response.Thumb))