فهرست منبع

Backport pull request #8609 from jellyfin/release-10.8.z

Use Token for SchedulesDirect Images and Image Index

Original-merge: a6740bf51e172d4f8d6bf540362dd0ac50973a77

Merged-by: Anthony Lavado <anthonylavado@me.com>

Backported-by: Joshua M. Boniface <joshua@boniface.me>
Anthony Lavado 2 سال پیش
والد
کامیت
f9221c9a64
1فایلهای تغییر یافته به همراه9 افزوده شده و 6 حذف شده
  1. 9 6
      Emby.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs

+ 9 - 6
Emby.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs

@@ -166,12 +166,12 @@ namespace Emby.Server.Implementations.LiveTv.Listings
 
 
                         const double DesiredAspect = 2.0 / 3;
                         const double DesiredAspect = 2.0 / 3;
 
 
-                        programEntry.PrimaryImage = GetProgramImage(ApiUrl, imagesWithText, DesiredAspect) ??
-                                                    GetProgramImage(ApiUrl, allImages, DesiredAspect);
+                        programEntry.PrimaryImage = GetProgramImage(ApiUrl, imagesWithText, DesiredAspect, token) ??
+                                                    GetProgramImage(ApiUrl, allImages, DesiredAspect, token);
 
 
                         const double WideAspect = 16.0 / 9;
                         const double WideAspect = 16.0 / 9;
 
 
-                        programEntry.ThumbImage = GetProgramImage(ApiUrl, imagesWithText, WideAspect);
+                        programEntry.ThumbImage = GetProgramImage(ApiUrl, imagesWithText, WideAspect, token);
 
 
                         // Don't supply the same image twice
                         // Don't supply the same image twice
                         if (string.Equals(programEntry.PrimaryImage, programEntry.ThumbImage, StringComparison.Ordinal))
                         if (string.Equals(programEntry.PrimaryImage, programEntry.ThumbImage, StringComparison.Ordinal))
@@ -179,7 +179,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings
                             programEntry.ThumbImage = null;
                             programEntry.ThumbImage = null;
                         }
                         }
 
 
-                        programEntry.BackdropImage = GetProgramImage(ApiUrl, imagesWithoutText, WideAspect);
+                        programEntry.BackdropImage = GetProgramImage(ApiUrl, imagesWithoutText, WideAspect, token);
 
 
                         // programEntry.bannerImage = GetProgramImage(ApiUrl, data, "Banner", false) ??
                         // programEntry.bannerImage = GetProgramImage(ApiUrl, data, "Banner", false) ??
                         //    GetProgramImage(ApiUrl, data, "Banner-L1", false) ??
                         //    GetProgramImage(ApiUrl, data, "Banner-L1", false) ??
@@ -400,7 +400,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings
             return info;
             return info;
         }
         }
 
 
-        private static string GetProgramImage(string apiUrl, IEnumerable<ImageDataDto> images, double desiredAspect)
+        private static string GetProgramImage(string apiUrl, IEnumerable<ImageDataDto> images, double desiredAspect, string token)
         {
         {
             var match = images
             var match = images
                 .OrderBy(i => Math.Abs(desiredAspect - GetAspectRatio(i)))
                 .OrderBy(i => Math.Abs(desiredAspect - GetAspectRatio(i)))
@@ -424,7 +424,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings
             }
             }
             else
             else
             {
             {
-                return apiUrl + "/image/" + uri;
+                return apiUrl + "/image/" + uri + "?token=" + token;
             }
             }
         }
         }
 
 
@@ -458,6 +458,8 @@ namespace Emby.Server.Implementations.LiveTv.Listings
             IReadOnlyList<string> programIds,
             IReadOnlyList<string> programIds,
             CancellationToken cancellationToken)
             CancellationToken cancellationToken)
         {
         {
+            var token = await GetToken(info, cancellationToken).ConfigureAwait(false);
+
             if (programIds.Count == 0)
             if (programIds.Count == 0)
             {
             {
                 return Array.Empty<ShowImagesDto>();
                 return Array.Empty<ShowImagesDto>();
@@ -479,6 +481,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings
             {
             {
                 Content = new StringContent(str.ToString(), Encoding.UTF8, MediaTypeNames.Application.Json)
                 Content = new StringContent(str.ToString(), Encoding.UTF8, MediaTypeNames.Application.Json)
             };
             };
+            message.Headers.TryAddWithoutValidation("token", token);
 
 
             try
             try
             {
             {