Merge pull request #3225 from quepasaquepasa/fix-ziggogo-bogus-episode-numbers
Drop implausible season/episode numbers in ziggogo.tv
This commit is contained in:
2 files changed
+13
-4
No files matched your search
@@ -72,8 +72,8 @@ module.exports = {
|
|||||||
subTitle: event.episodeName,
|
subTitle: event.episodeName,
|
||||||
description: event.longDescription ? event.longDescription : event.shortDescription,
|
description: event.longDescription ? event.longDescription : event.shortDescription,
|
||||||
category: event.genres,
|
category: event.genres,
|
||||||
season: event.seasonNumber,
|
season: parsePlausibleNumber(event.seasonNumber, 1000),
|
||||||
episode: event.episodeNumber,
|
episode: parsePlausibleNumber(event.episodeNumber, 100000),
|
||||||
country: event.countryOfOrigin,
|
country: event.countryOfOrigin,
|
||||||
actor: event.actors,
|
actor: event.actors,
|
||||||
director: event.directors,
|
director: event.directors,
|
||||||
@@ -115,6 +115,13 @@ module.exports = {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function parsePlausibleNumber(value, max) {
|
||||||
|
// events without real season/episode data carry internal ids in these fields
|
||||||
|
// (e.g. seasonNumber 93850000, episodeNumber 513104549); the ziggogo.tv
|
||||||
|
// frontend hides such values, so drop anything outside a plausible range
|
||||||
|
return value > 0 && value < max ? value : null
|
||||||
|
}
|
||||||
|
|
||||||
function segmentUrl(date, segment = 0) {
|
function segmentUrl(date, segment = 0) {
|
||||||
return `https://staticqbr-prod-nl.gnp.cloud.ziggogo.tv/eng/web/epg-service-lite/nl/en/events/segments/${date.format(
|
return `https://staticqbr-prod-nl.gnp.cloud.ziggogo.tv/eng/web/epg-service-lite/nl/en/events/segments/${date.format(
|
||||||
'YYYYMMDD'
|
'YYYYMMDD'
|
||||||
|
|||||||
@@ -67,8 +67,10 @@ it('can parse response', async () => {
|
|||||||
description:
|
description:
|
||||||
'Homeshoppingprogramma waarin de kijker via de telefoon allerlei producten kan aanschaffen.',
|
'Homeshoppingprogramma waarin de kijker via de telefoon allerlei producten kan aanschaffen.',
|
||||||
category: ["Consumentenprogramma's", 'Shoppen'],
|
category: ["Consumentenprogramma's", 'Shoppen'],
|
||||||
season: 78610000,
|
// The source sends internal ids here rather than real numbering
|
||||||
episode: 492767862
|
// (season 78610000, episode 492767862), so they are dropped.
|
||||||
|
season: null,
|
||||||
|
episode: null
|
||||||
})
|
})
|
||||||
expect(result[19]).toMatchObject({
|
expect(result[19]).toMatchObject({
|
||||||
start: '2026-05-30T22:44:00.000Z',
|
start: '2026-05-30T22:44:00.000Z',
|
||||||
|
|||||||
Reference in new issue
Block a user