Merge pull request #1379 from iptv-org/fix-i.mjh.nz

Fix i.mjh.nz
This commit is contained in:
Aleksandr Statciuk 2022-11-21 17:24:58 +03:00 committed by GitHub
commit b320484c89
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 26 additions and 9 deletions

View file

@ -23,7 +23,16 @@ module.exports = {
return `${API_ENDPOINT}/${path}.xml` return `${API_ENDPOINT}/${path}.xml`
}, },
parser: function ({ content, channel, date, cached }) { parser: function ({ content, channel, date, cached }) {
return parseItems(content, channel, date) const items = parseItems(content, channel, date)
return items.map(item => {
return {
...item,
title: getTitle(item),
description: getDescription(item),
categories: getCategories(item)
}
})
}, },
async channels({ path, lang = 'en' }) { async channels({ path, lang = 'en' }) {
let xml = await axios let xml = await axios
@ -42,6 +51,18 @@ module.exports = {
} }
} }
function getTitle(item) {
return item.title.length ? item.title[0].value : null
}
function getDescription(item) {
return item.desc.length ? item.desc[0].value : null
}
function getCategories(item) {
return item.category.map(c => c.value)
}
function parseItems(content, channel, date) { function parseItems(content, channel, date) {
try { try {
const curr_day = date const curr_day = date

View file

@ -30,14 +30,10 @@ it('can parse response', () => {
expect(results[0]).toMatchObject({ expect(results[0]).toMatchObject({
start: '2022-05-03T10:49:22.000Z', start: '2022-05-03T10:49:22.000Z',
stop: '2022-05-03T11:21:22.000Z', stop: '2022-05-03T11:21:22.000Z',
title: [{ value: 'Barney and Friends' }], title: 'Barney and Friends',
desc: [ description:
{ 'Baby Bop forgets to say "please" and "thank you". Riff shares his dream of becoming an inventor.',
value: categories: ['Children & Family']
'Baby Bop forgets to say "please" and "thank you". Riff shares his dream of becoming an inventor.'
}
],
category: [{ value: 'Children & Family' }]
}) })
}) })