From 8cac4fb466c0e6e076f1c9e1b1e6751e34c0d607 Mon Sep 17 00:00:00 2001 From: Brandon Date: Thu, 16 May 2024 17:34:50 -0600 Subject: [PATCH] JastUsaLibrary: Use store page screenshot as fallback if background image is not available --- .../JastUsaLibrary/JastUsaLibraryMetadataProvider.cs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/source/Library/JastUsaLibrary/JastUsaLibraryMetadataProvider.cs b/source/Library/JastUsaLibrary/JastUsaLibraryMetadataProvider.cs index 168d997af1..af8277bb9e 100644 --- a/source/Library/JastUsaLibrary/JastUsaLibraryMetadataProvider.cs +++ b/source/Library/JastUsaLibrary/JastUsaLibraryMetadataProvider.cs @@ -71,8 +71,17 @@ public override GameMetadata GetMetadata(Game game) metadata.CoverImage = new MetadataFile(string.Format(JastUrls.Web.JastMediaUrlTemplate, coverImage.Path)); } + var nonStoreScreenshotsImageType = new List + { + "TAIL_PACKAGE_THUMBNAIL_PRODUCT", + "TALL_SEARCH_CATALOG", + "PRODUCT_MINIATURE" + }; + var backgroundImage = productResponse.Images - .FirstOrDefault(x => x.ImageType.StartsWith("BACKGROUND_PRODUCT", StringComparison.InvariantCultureIgnoreCase)); + .FirstOrDefault(x => x.ImageType.StartsWith("BACKGROUND_PRODUCT", StringComparison.InvariantCultureIgnoreCase)) + ?? productResponse.Images + .FirstOrDefault(x => !nonStoreScreenshotsImageType.Any(imgType => x.ImageType.StartsWith(imgType, StringComparison.InvariantCultureIgnoreCase))); if (backgroundImage != null) { metadata.BackgroundImage = new MetadataFile(string.Format(JastUrls.Web.JastMediaUrlTemplate, backgroundImage.Path));