Merge pull request #1651 from sl1288/master

Fix local trailers playback
This commit is contained in:
Andrew Rabert 2019-08-27 19:02:05 -04:00 committed by GitHub
commit 24775f4988
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 15 additions and 5 deletions

View File

@ -1079,7 +1079,7 @@ namespace Emby.Server.Implementations.Dto
allExtras = item.GetExtras().ToArray();
}
dto.LocalTrailerCount = allExtras.Count(i => i.ExtraType.HasValue && i.ExtraType.Value == ExtraType.Trailer);
dto.LocalTrailerCount = allExtras.Count(i => i.ExtraType.HasValue && i.ExtraType.Value == ExtraType.Trailer) + item.GetTrailers().Count();
}
// Add EpisodeInfo

View File

@ -366,11 +366,13 @@ namespace MediaBrowser.Api.UserLibrary
var dtoOptions = GetDtoOptions(_authContext, request);
var dtos = item.GetExtras(new[] { ExtraType.Trailer })
.Select(i => _dtoService.GetBaseItemDto(i, dtoOptions, user, item))
.ToArray();
var dtosExtras = item.GetExtras(new[] { ExtraType.Trailer })
.Select(i => _dtoService.GetBaseItemDto(i, dtoOptions, user, item));
return ToOptimizedResult(dtos);
var dtosTrailers = item.GetTrailers()
.Select(i => _dtoService.GetBaseItemDto(i, dtoOptions, user, item));
return ToOptimizedResult(dtosExtras.Concat(dtosTrailers).ToArray());
}
/// <summary>

View File

@ -2883,6 +2883,14 @@ namespace MediaBrowser.Controller.Entities
return ExtraIds.Select(LibraryManager.GetItemById).Where(i => i != null && extraTypes.Contains(i.ExtraType.Value)).OrderBy(i => i.SortName);
}
public IEnumerable<BaseItem> GetTrailers()
{
if (this is IHasTrailers)
return ((IHasTrailers)this).LocalTrailerIds.Select(LibraryManager.GetItemById).Where(i => i != null).OrderBy(i => i.SortName);
else
return Array.Empty<BaseItem>();
}
public IEnumerable<BaseItem> GetDisplayExtras()
{
return GetExtras(DisplayExtraTypes);