From 9df2a8d8839b81abd334b79c9112432148f5ad14 Mon Sep 17 00:00:00 2001 From: RevGear <95308545+RevGear@users.noreply.github.com> Date: Sun, 30 Oct 2022 13:48:24 +0000 Subject: [PATCH] Season / Episode Added length check to season / episode. This will some of the odd values used for some programmes. Virginmedia.com and Ziggogo.tv updated, there might be more that need the same check. --- .../virginmedia.com/virginmedia.com.config.js | 18 +++++++++++------- sites/ziggogo.tv/ziggogo.tv.config.js | 16 ++++++++++++++-- 2 files changed, 25 insertions(+), 9 deletions(-) diff --git a/sites/virginmedia.com/virginmedia.com.config.js b/sites/virginmedia.com/virginmedia.com.config.js index e6f2dcdb..89d79c7f 100644 --- a/sites/virginmedia.com/virginmedia.com.config.js +++ b/sites/virginmedia.com/virginmedia.com.config.js @@ -96,13 +96,17 @@ function parseCategory(detail) { categories.push(category.title) }); return categories - } +} - function parseSeason(detail) { - return detail.program.seriesNumber || null - } +function parseSeason(detail) { + if (!detail.program.seriesNumber) return null + if (String(detail.program.seriesNumber).length > 2) return null + return detail.program.seriesNumber +} - function parseEpisode(detail) { - return detail.program.seriesEpisodeNumber || null - } +function parseEpisode(detail) { + if (!detail.program.seriesEpisodeNumber) return null + if (String(detail.program.seriesEpisodeNumber).length > 3) return null + return detail.program.seriesEpisodeNumber +} diff --git a/sites/ziggogo.tv/ziggogo.tv.config.js b/sites/ziggogo.tv/ziggogo.tv.config.js index d216820d..937ed893 100644 --- a/sites/ziggogo.tv/ziggogo.tv.config.js +++ b/sites/ziggogo.tv/ziggogo.tv.config.js @@ -63,8 +63,8 @@ module.exports = { description: detail.longDescription, category: detail.genres, actors: detail.actors, - season: detail.seasonNumber, - episode: detail.episodeNumber, + season: parseSeason(detail), + episode: parseEpisode(detail), start: parseStart(item), stop: parseStop(item) }) @@ -118,3 +118,15 @@ function parseItems(content, channel) { return Array.isArray(channelData.events) ? channelData.events : [] } + +function parseSeason(detail) { + if (!detail.seasonNumber) return null + if (String(detail.seasonNumber).length > 2) return null + return detail.seasonNumber +} + +function parseEpisode(detail) { + if (!detail.episodeNumber) return null + if (String(detail.episodeNumber).length > 3) return null + return detail.episodeNumber +} \ No newline at end of file