From a0712fab35c733959042612c7ec2df914674b2d4 Mon Sep 17 00:00:00 2001 From: RevGear <95308545+RevGear@users.noreply.github.com> Date: Mon, 31 Oct 2022 20:15:00 +0000 Subject: [PATCH] Season / Episode Validation of season / episode part 2 --- sites/guidatv.sky.it/guidatv.sky.it.config.js | 16 ++++++++++++++-- sites/magentatv.at/magentatv.at.config.js | 16 ++++++++++++++-- sites/raiplay.it/raiplay.it.config.js | 16 ++++++++++++++-- 3 files changed, 42 insertions(+), 6 deletions(-) diff --git a/sites/guidatv.sky.it/guidatv.sky.it.config.js b/sites/guidatv.sky.it/guidatv.sky.it.config.js index d6ec3997..db45afeb 100644 --- a/sites/guidatv.sky.it/guidatv.sky.it.config.js +++ b/sites/guidatv.sky.it/guidatv.sky.it.config.js @@ -18,8 +18,8 @@ module.exports = { title: item.eventTitle, description: item.eventSynopsis, category: parseCategory(item), - season: item.content.seasonNumber || null, - episode: item.content.episodeNumber || null, + season: parseSeason(item), + episode: parseEpisode(item), start: parseStart(item), stop: parseStop(item), url: parseURL(item), @@ -57,3 +57,15 @@ function parseIcon(item) { return cover && cover.img && cover.img.url ? `https://guidatv.sky.it${cover.img.url}` : null } + +function parseSeason(item) { + if (!item.content.seasonNumber) return null + if (String(item.content.seasonNumber)).length > 2) return null + return item.content.seasonNumber +} + +function parseEpisode(item) { + if (!item.content.episodeNumber) return null + if (String(item.content.episodeNumber).length > 3) return null + return item.content.episodeNumber +} \ No newline at end of file diff --git a/sites/magentatv.at/magentatv.at.config.js b/sites/magentatv.at/magentatv.at.config.js index 4647b6ec..db64ec78 100644 --- a/sites/magentatv.at/magentatv.at.config.js +++ b/sites/magentatv.at/magentatv.at.config.js @@ -67,8 +67,8 @@ module.exports = { actors: detail.actors, directors: detail.directors, producers: detail.producers, - season: detail.seasonNumber, - episode: detail.episodeNumber, + season: parseSeason(detail), + episode: parseEpisode(detail), start: parseStart(item), stop: parseStop(item) }) @@ -120,3 +120,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 +} diff --git a/sites/raiplay.it/raiplay.it.config.js b/sites/raiplay.it/raiplay.it.config.js index 985428f8..fce7c24c 100644 --- a/sites/raiplay.it/raiplay.it.config.js +++ b/sites/raiplay.it/raiplay.it.config.js @@ -31,8 +31,8 @@ module.exports = { programs.push({ title: item.name || item.program.name, description: item.description, - season: item.season || null, - episode: item.episode || null, + season: parseSeason(item) , + episode: parseEpisode(item), sub_title : item['episode_title'] || null, url : parseURL(item), start, @@ -64,3 +64,15 @@ function parseURL(item) { } return url } + +function parseSeason(item) { + if (!item.season) return null + if (String(item.season).length > 2) return null + return item.season +} + +function parseEpisode(item) { + if (!item.episode) return null + if (String(item.episode).length > 3) return null + return item.episode +}