Show "Unknown Game" when unable to get game's title

This commit is contained in:
redphx 2025-01-29 15:47:29 +07:00
parent 277a830d99
commit 54a3e144a6
3 changed files with 15 additions and 11 deletions

View File

@ -4121,11 +4121,14 @@ class XboxApi {
static CACHED_TITLES = {}; static CACHED_TITLES = {};
static async getProductTitle(xboxTitleId) { static async getProductTitle(xboxTitleId) {
if (xboxTitleId = xboxTitleId.toString(), XboxApi.CACHED_TITLES[xboxTitleId]) return XboxApi.CACHED_TITLES[xboxTitleId]; if (xboxTitleId = xboxTitleId.toString(), XboxApi.CACHED_TITLES[xboxTitleId]) return XboxApi.CACHED_TITLES[xboxTitleId];
let title;
try { try {
let url = `https://displaycatalog.mp.microsoft.com/v7.0/products/lookup?market=US&languages=en&value=${xboxTitleId}&alternateId=XboxTitleId&fieldsTemplate=browse`, productTitle = (await (await NATIVE_FETCH(url)).json()).Products[0].LocalizedProperties[0].ProductTitle; let url = `https://displaycatalog.mp.microsoft.com/v7.0/products/lookup?market=US&languages=en&value=${xboxTitleId}&alternateId=XboxTitleId&fieldsTemplate=browse`;
return XboxApi.CACHED_TITLES[xboxTitleId] = productTitle, productTitle; title = (await (await NATIVE_FETCH(url)).json()).Products[0].LocalizedProperties[0].ProductTitle;
} catch (e) {} } catch (e) {
return; title = "Unknown Game #" + xboxTitleId;
}
return XboxApi.CACHED_TITLES[xboxTitleId] = title, title;
} }
} }
class SettingsManager { class SettingsManager {

File diff suppressed because one or more lines are too long

View File

@ -9,17 +9,18 @@ export class XboxApi {
return XboxApi.CACHED_TITLES[xboxTitleId]; return XboxApi.CACHED_TITLES[xboxTitleId];
} }
let title: string;
try { try {
const url = `https://displaycatalog.mp.microsoft.com/v7.0/products/lookup?market=US&languages=en&value=${xboxTitleId}&alternateId=XboxTitleId&fieldsTemplate=browse`; const url = `https://displaycatalog.mp.microsoft.com/v7.0/products/lookup?market=US&languages=en&value=${xboxTitleId}&alternateId=XboxTitleId&fieldsTemplate=browse`;
const resp = await NATIVE_FETCH(url); const resp = await NATIVE_FETCH(url);
const json = await resp.json(); const json = await resp.json();
const productTitle = json['Products'][0]['LocalizedProperties'][0]['ProductTitle']; title = json['Products'][0]['LocalizedProperties'][0]['ProductTitle'];
XboxApi.CACHED_TITLES[xboxTitleId] = productTitle; } catch (e) {
title = 'Unknown Game #' + xboxTitleId;
}
return productTitle; XboxApi.CACHED_TITLES[xboxTitleId] = title;
} catch (e) {} return title;
return;
} }
} }