Work on #16 - add PCGW gogcom_id to manifest
This commit is contained in:
parent
c9be033706
commit
555f869dfa
4 changed files with 22 additions and 0 deletions
|
@ -100,3 +100,8 @@ additionalProperties:
|
||||||
properties:
|
properties:
|
||||||
id:
|
id:
|
||||||
type: integer
|
type: integer
|
||||||
|
gog:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
id:
|
||||||
|
type: integer
|
||||||
|
|
|
@ -81,3 +81,8 @@ additionalProperties:
|
||||||
properties:
|
properties:
|
||||||
id:
|
id:
|
||||||
type: integer
|
type: integer
|
||||||
|
gog:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
id:
|
||||||
|
type: integer
|
||||||
|
|
|
@ -40,6 +40,9 @@ export interface Game {
|
||||||
steam?: {
|
steam?: {
|
||||||
id?: number
|
id?: number
|
||||||
};
|
};
|
||||||
|
gog?: {
|
||||||
|
id?: number,
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface Constraint {
|
export interface Constraint {
|
||||||
|
@ -77,6 +80,9 @@ function integrateWikiData(game: Game, cache: WikiGameCache[""]): void {
|
||||||
if (cache.steam !== undefined) {
|
if (cache.steam !== undefined) {
|
||||||
game.steam = { id: cache.steam };
|
game.steam = { id: cache.steam };
|
||||||
}
|
}
|
||||||
|
if (cache.gog !== undefined) {
|
||||||
|
game.gog = { id: cache.gog };
|
||||||
|
}
|
||||||
const info = parseTemplates(cache.templates ?? []);
|
const info = parseTemplates(cache.templates ?? []);
|
||||||
game.files = info.files;
|
game.files = info.files;
|
||||||
game.registry = info.registry;
|
game.registry = info.registry;
|
||||||
|
|
|
@ -37,6 +37,8 @@ export type WikiGameCache = {
|
||||||
renamedFrom?: Array<string>,
|
renamedFrom?: Array<string>,
|
||||||
templates?: Array<string>,
|
templates?: Array<string>,
|
||||||
steam?: number,
|
steam?: number,
|
||||||
|
gog?: number
|
||||||
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -587,6 +589,10 @@ export async function getGame(pageTitle: string, cache: WikiGameCache, client: W
|
||||||
if (!isNaN(steamId) && steamId > 0) {
|
if (!isNaN(steamId) && steamId > 0) {
|
||||||
cache[pageTitle].steam = steamId;
|
cache[pageTitle].steam = steamId;
|
||||||
}
|
}
|
||||||
|
const gogId = Number(template.parameters["gogcom id"]);
|
||||||
|
if (!isNaN(gogId) && gogId > 0) {
|
||||||
|
cache[pageTitle].gog = gogId
|
||||||
|
}
|
||||||
} else if (templateName === "game data/saves" || templateName === "game data/config") {
|
} else if (templateName === "game data/saves" || templateName === "game data/config") {
|
||||||
const reparsed = parseWiki(template.toString());
|
const reparsed = parseWiki(template.toString());
|
||||||
if (reparsed[0].positionalParameters[1]?.length > 0 ?? false) {
|
if (reparsed[0].positionalParameters[1]?.length > 0 ?? false) {
|
||||||
|
|
Reference in a new issue