Fixed: Return remote image links for RemotePoster and RemoteCover

(cherry picked from commit 4219cdb3644f96e1e8f3178fe0a50430c1004506)

Fixes #4101
Closes #212
This commit is contained in:
Taloth Saldono
2020-03-22 11:59:26 +01:00
committed by Bogdan
parent 7a629ed044
commit 525e855038
5 changed files with 15 additions and 13 deletions

View File

@@ -30,13 +30,11 @@ namespace NzbDrone.Core.MediaCover
private string _url;
public string Url
{
get
{
return _url;
}
get => _url;
set
{
_url = value;
if (Extension.IsNullOrWhiteSpace())
{
Extension = Path.GetExtension(value);
@@ -46,6 +44,7 @@ namespace NzbDrone.Core.MediaCover
public MediaCoverTypes CoverType { get; set; }
public string Extension { get; private set; }
public string RemoteUrl { get; set; }
public MediaCover()
{

View File

@@ -90,7 +90,8 @@ namespace NzbDrone.Core.MediaCover
// Author isn't in Readarr yet, map via a proxy to circument referrer issues
foreach (var mediaCover in covers)
{
mediaCover.Url = _mediaCoverProxy.RegisterUrl(mediaCover.Url);
mediaCover.RemoteUrl = mediaCover.Url;
mediaCover.Url = _mediaCoverProxy.RegisterUrl(mediaCover.RemoteUrl);
}
}
else
@@ -104,6 +105,8 @@ namespace NzbDrone.Core.MediaCover
var filePath = GetCoverPath(entityId, coverEntity, mediaCover.CoverType, mediaCover.Extension, null);
mediaCover.RemoteUrl = mediaCover.Url;
if (coverEntity == MediaCoverEntity.Book)
{
mediaCover.Url = _configFileProvider.UrlBase + @"/MediaCover/Books/" + entityId + "/" + mediaCover.CoverType.ToString().ToLower() + GetExtension(mediaCover.CoverType, mediaCover.Extension);

View File

@@ -37,11 +37,11 @@ namespace Readarr.Api.V1.Author
_coverMapper.ConvertToLocalUrls(resource.Id, MediaCoverEntity.Author, resource.Images);
var poster = currentAuthor.Metadata.Value.Images.FirstOrDefault(c => c.CoverType == MediaCoverTypes.Poster);
var poster = resource.Images.FirstOrDefault(c => c.CoverType == MediaCoverTypes.Poster);
if (poster != null)
{
resource.RemotePoster = poster.Url;
resource.RemotePoster = poster.RemoteUrl;
}
resource.Folder = _fileNameBuilder.GetAuthorFolder(currentAuthor);

View File

@@ -34,11 +34,11 @@ namespace Readarr.Api.V1.Books
_coverMapper.ConvertToLocalUrls(resource.Id, MediaCoverEntity.Book, resource.Images);
var cover = currentBook.Editions.Value.Single(x => x.Monitored).Images.FirstOrDefault(c => c.CoverType == MediaCoverTypes.Cover);
var cover = resource.Images.FirstOrDefault(c => c.CoverType == MediaCoverTypes.Cover);
if (cover != null)
{
resource.RemoteCover = cover.Url;
resource.RemoteCover = cover.RemoteUrl;
}
yield return resource;

View File

@@ -47,11 +47,11 @@ namespace Readarr.Api.V1.Search
_coverMapper.ConvertToLocalUrls(resource.Author.Id, MediaCoverEntity.Author, resource.Author.Images);
var poster = author.Metadata.Value.Images.FirstOrDefault(c => c.CoverType == MediaCoverTypes.Poster);
var poster = resource.Author.Images.FirstOrDefault(c => c.CoverType == MediaCoverTypes.Poster);
if (poster != null)
{
resource.Author.RemotePoster = poster.Url;
resource.Author.RemotePoster = poster.RemoteUrl;
}
resource.Author.Folder = _fileNameBuilder.GetAuthorFolder(author);
@@ -66,11 +66,11 @@ namespace Readarr.Api.V1.Search
_coverMapper.ConvertToLocalUrls(resource.Book.Id, MediaCoverEntity.Book, resource.Book.Images);
var cover = book.Editions.Value.Single(x => x.Monitored).Images.FirstOrDefault(c => c.CoverType == MediaCoverTypes.Cover);
var cover = resource.Book.Images.FirstOrDefault(c => c.CoverType == MediaCoverTypes.Cover);
if (cover != null)
{
resource.Book.RemoteCover = cover.Url;
resource.Book.RemoteCover = cover.RemoteUrl;
}
resource.Book.Author.Folder = _fileNameBuilder.GetAuthorFolder(book.Author);