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 1/2] 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 From faa9574d090edeb37ae25f7501a50b1231023e8b Mon Sep 17 00:00:00 2001 From: RevGear <95308545+RevGear@users.noreply.github.com> Date: Sun, 30 Oct 2022 13:53:18 +0000 Subject: [PATCH 2/2] season episode / tests --- sites/virginmedia.com/virginmedia.com.test.js | 12 +++--------- sites/ziggogo.tv/ziggogo.tv.test.js | 4 +--- 2 files changed, 4 insertions(+), 12 deletions(-) diff --git a/sites/virginmedia.com/virginmedia.com.test.js b/sites/virginmedia.com/virginmedia.com.test.js index c49a43cb..a8e8ced9 100644 --- a/sites/virginmedia.com/virginmedia.com.test.js +++ b/sites/virginmedia.com/virginmedia.com.test.js @@ -88,27 +88,21 @@ it('can parse response', done => { stop: '2022-03-17T02:30:00.000Z', title: 'Live: NHL Hockey', description: 'The Boston Bruins make the trip to Xcel Energy Center for an NHL clash with the Minnesota Wild.', - category: ['Sport', 'Ice Hockey'], - season: '20120000', - episode: '2022031605' + category: ['Sport', 'Ice Hockey'] }, { start: '2022-03-17T02:30:00.000Z', stop: '2022-03-17T06:00:00.000Z', title: 'Challenge Cup Ice Hockey', description: 'Exclusive coverage from SSE Arena of the Premier Sports Challenge Final between Belfast Giants and Cardiff Devils.', - category: ['Ice Hockey'], - season: '79870000', - episode: '2022031605' + category: ['Ice Hockey'] }, { start: '2022-03-17T10:00:00.000Z', stop: '2022-03-17T12:00:00.000Z', title: 'NHL Hockey', description: 'The Calgary Flames play host to the New Jersey Devils in this NHL encounter from Scotiabank Saddledome.', - category: ['Sport', 'Ice Hockey'], - season: '102022', - episode: '194' + category: ['Sport', 'Ice Hockey'] }, { start: '2022-03-17T17:45:00.000Z', diff --git a/sites/ziggogo.tv/ziggogo.tv.test.js b/sites/ziggogo.tv/ziggogo.tv.test.js index 3a5f13b2..dd802f59 100644 --- a/sites/ziggogo.tv/ziggogo.tv.test.js +++ b/sites/ziggogo.tv/ziggogo.tv.test.js @@ -87,9 +87,7 @@ it('can parse response', async () => { 'Jeroen Tjepkema', 'Saïda Maggé', 'Winfried Baijens' - ], - season: 6510000, - episode: 144222201 + ] }) })