Merge pull request #1651 from sl1288/master

Fix local trailers playback
pull/1676/head
Andrew Rabert 5 years ago committed by GitHub
commit 24775f4988
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -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

@ -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));
var dtosTrailers = item.GetTrailers()
.Select(i => _dtoService.GetBaseItemDto(i, dtoOptions, user, item));
return ToOptimizedResult(dtos);
return ToOptimizedResult(dtosExtras.Concat(dtosTrailers).ToArray());
}
/// <summary>

@ -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);

Loading…
Cancel
Save