mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-07-09 03:04:24 -04:00
update default theme api
This commit is contained in:
parent
8d6a7a9992
commit
d770a8af7c
@ -70,21 +70,20 @@ namespace MediaBrowser.Api.DefaultTheme
|
||||
|
||||
var view = new TvView();
|
||||
|
||||
var fields = Enum.GetNames(typeof(ItemFields))
|
||||
.Select(i => (ItemFields)Enum.Parse(typeof(ItemFields), i, true))
|
||||
.ToList();
|
||||
var fields = new List<ItemFields>();
|
||||
|
||||
var spotlightItemTasks = seriesWithBackdrops
|
||||
.OrderByDescending(i => GetResolution(i, i.BackdropImagePaths[0]))
|
||||
.Take(60)
|
||||
.OrderBy(i => Guid.NewGuid())
|
||||
.Take(30)
|
||||
.Select(i => _dtoService.GetBaseItemDto(i, fields, user));
|
||||
|
||||
view.SpotlightItems = await Task.WhenAll(spotlightItemTasks).ConfigureAwait(false);
|
||||
|
||||
view.ShowsItems = series
|
||||
.Where(i => !string.IsNullOrEmpty(i.PrimaryImagePath))
|
||||
.Where(i => i.BackdropImagePaths.Count > 0)
|
||||
.OrderBy(i => Guid.NewGuid())
|
||||
.Select(i => GetItemStub(i, ImageType.Primary))
|
||||
.Select(i => GetItemStub(i, ImageType.Backdrop))
|
||||
.Where(i => i != null)
|
||||
.Take(3)
|
||||
.ToArray();
|
||||
@ -132,24 +131,23 @@ namespace MediaBrowser.Api.DefaultTheme
|
||||
view.FamilyMoviePercentage = 100 * familyMovies.Count;
|
||||
view.FamilyMoviePercentage /= movies.Count;
|
||||
|
||||
var moviesWithImages = movies
|
||||
.Where(i => !string.IsNullOrEmpty(i.PrimaryImagePath))
|
||||
var moviesWithBackdrops = movies
|
||||
.Where(i => i.BackdropImagePaths.Count > 0)
|
||||
.ToList();
|
||||
|
||||
var fields = Enum.GetNames(typeof(ItemFields))
|
||||
.Select(i => (ItemFields)Enum.Parse(typeof(ItemFields), i, true))
|
||||
.ToList();
|
||||
var fields = new List<ItemFields>();
|
||||
|
||||
var spotlightItemTasks = itemsWithBackdrops
|
||||
.OrderByDescending(i => GetResolution(i, i.BackdropImagePaths[0]))
|
||||
.Take(60)
|
||||
.OrderBy(i => Guid.NewGuid())
|
||||
.Take(30)
|
||||
.Select(i => _dtoService.GetBaseItemDto(i, fields, user));
|
||||
|
||||
view.SpotlightItems = await Task.WhenAll(spotlightItemTasks).ConfigureAwait(false);
|
||||
|
||||
view.MovieItems = moviesWithImages
|
||||
view.MovieItems = moviesWithBackdrops
|
||||
.OrderBy(i => Guid.NewGuid())
|
||||
.Select(i => GetItemStub(i, ImageType.Primary))
|
||||
.Select(i => GetItemStub(i, ImageType.Backdrop))
|
||||
.Where(i => i != null)
|
||||
.Take(3)
|
||||
.ToArray();
|
||||
@ -165,33 +163,33 @@ namespace MediaBrowser.Api.DefaultTheme
|
||||
|
||||
view.BoxSetItems = items
|
||||
.OfType<BoxSet>()
|
||||
.Where(i => !string.IsNullOrEmpty(i.PrimaryImagePath))
|
||||
.Where(i => i.BackdropImagePaths.Count > 0)
|
||||
.OrderBy(i => Guid.NewGuid())
|
||||
.Select(i => GetItemStub(i, ImageType.Primary))
|
||||
.Select(i => GetItemStub(i, ImageType.Backdrop))
|
||||
.Where(i => i != null)
|
||||
.Take(3)
|
||||
.ToArray();
|
||||
|
||||
view.ThreeDItems = moviesWithImages
|
||||
view.ThreeDItems = moviesWithBackdrops
|
||||
.Where(i => i.Is3D)
|
||||
.OrderBy(i => Guid.NewGuid())
|
||||
.Select(i => GetItemStub(i, ImageType.Primary))
|
||||
.Select(i => GetItemStub(i, ImageType.Backdrop))
|
||||
.Where(i => i != null)
|
||||
.Take(3)
|
||||
.ToArray();
|
||||
|
||||
view.HDItems = hdMovies
|
||||
.Where(i => !string.IsNullOrEmpty(i.PrimaryImagePath))
|
||||
.Where(i => i.BackdropImagePaths.Count > 0)
|
||||
.OrderBy(i => Guid.NewGuid())
|
||||
.Select(i => GetItemStub(i, ImageType.Primary))
|
||||
.Select(i => GetItemStub(i, ImageType.Backdrop))
|
||||
.Where(i => i != null)
|
||||
.Take(3)
|
||||
.ToArray();
|
||||
|
||||
view.FamilyMovies = familyMovies
|
||||
.Where(i => !string.IsNullOrEmpty(i.PrimaryImagePath))
|
||||
.Where(i => i.BackdropImagePaths.Count > 0)
|
||||
.OrderBy(i => Guid.NewGuid())
|
||||
.Select(i => GetItemStub(i, ImageType.Primary))
|
||||
.Select(i => GetItemStub(i, ImageType.Backdrop))
|
||||
.Where(i => i != null)
|
||||
.Take(3)
|
||||
.ToArray();
|
||||
@ -201,6 +199,22 @@ namespace MediaBrowser.Api.DefaultTheme
|
||||
return view;
|
||||
}
|
||||
|
||||
private double GetResolution(BaseItem item, string path)
|
||||
{
|
||||
try
|
||||
{
|
||||
var date = Kernel.Instance.ImageManager.GetImageDateModified(item, path);
|
||||
|
||||
var size = Kernel.Instance.ImageManager.GetImageSize(path, date).Result;
|
||||
|
||||
return size.Width;
|
||||
}
|
||||
catch
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
private bool IsFamilyMovie(BaseItem item, int? baselineRating)
|
||||
{
|
||||
var ratingString = item.CustomRating;
|
||||
|
@ -509,7 +509,7 @@ namespace MediaBrowser.Api.UserLibrary
|
||||
// Max official rating
|
||||
if (!string.IsNullOrEmpty(request.MaxOfficialRating))
|
||||
{
|
||||
var level = _localization.GetRatingLevel(request.MinOfficialRating);
|
||||
var level = _localization.GetRatingLevel(request.MaxOfficialRating);
|
||||
|
||||
if (level.HasValue)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user