diff --git a/sites/dstv.com/dstv.com.config.js b/sites/dstv.com/dstv.com.config.js index 7b894d51..bf4910c4 100644 --- a/sites/dstv.com/dstv.com.config.js +++ b/sites/dstv.com/dstv.com.config.js @@ -1,8 +1,12 @@ const axios = require('axios') const dayjs = require('dayjs') const utc = require('dayjs/plugin/utc') +const timezone = require('dayjs/plugin/timezone') +const customParseFormat = require('dayjs/plugin/customParseFormat') dayjs.extend(utc) +dayjs.extend(timezone) +dayjs.extend(customParseFormat) module.exports = { site: 'dstv.com', @@ -30,8 +34,8 @@ module.exports = { description: parseDescription(details), icon: parseIcon(details), category: parseCategory(details), - start: parseStart(item), - stop: parseStop(item) + start: parseTime(item.StartTime), + stop: parseTime(item.EndTime) }) } @@ -75,12 +79,16 @@ async function loadProgramDetails(item) { .catch(console.error) } -function parseStart(item) { - return dayjs.utc(item.StartTime, 'YYYY-MM-DDTHH:mm:ss') -} +// function parseStart(item) { +// return dayjs.utc(item.StartTime, 'YYYY-MM-DDTHH:mm:ss') +// } -function parseStop(item) { - return dayjs.utc(item.EndTime, 'YYYY-MM-DDTHH:mm:ss') +// function parseStop(item) { +// return dayjs.utc(item.EndTime, 'YYYY-MM-DDTHH:mm:ss') +// } + +function parseTime(time) { + return dayjs.tz(time, 'YYYY-MM-DDTHH:mm:ss', 'Africa/Johannesburg') } function parseItems(content, channel) { diff --git a/sites/dstv.com/dstv.com.test.js b/sites/dstv.com/dstv.com.test.js index 287ba00e..f5be1006 100644 --- a/sites/dstv.com/dstv.com.test.js +++ b/sites/dstv.com/dstv.com.test.js @@ -63,8 +63,8 @@ it('can parse response', done => { expect(result).toMatchObject([ { - start: '2022-03-11T00:10:00.000Z', - stop: '2022-03-11T00:50:00.000Z', + start: '2022-03-10T22:10:00.000Z', + stop: '2022-03-10T22:50:00.000Z', title: 'Curb Your Enthusiasm' // description: // "'S11/E6 of 10 - Man Fights Tiny Woman'. A general entertainment channel showcasing the best international content, focusing on scripted drama, comedy and talk.",