also check for mrss item enclosures when extracting items

This commit is contained in:
Toni Barth 2024-12-18 19:15:09 +01:00
parent ed0484a8e1
commit 4d2241769e

View File

@ -75,15 +75,19 @@ function extractPodcastMetadata(channel) {
function extractEpisodeData(item) { function extractEpisodeData(item) {
// Episode must have url // Episode must have url
if (!item.enclosure?.[0]?.['$']?.url) { let enclosure
if (item.enclosure?.[0]?.['$']?.url) {
enclosure = item.enclosure[0]['$']
} else if(item['media:content']?.find(c => c?.['$']?.url && (c?.['$']?.type ?? "").startsWith("audio"))) {
enclosure = item['media:content'].find(c => (c['$']?.type ?? "").startsWith("audio"))['$']
} else {
Logger.error(`[podcastUtils] Invalid podcast episode data`) Logger.error(`[podcastUtils] Invalid podcast episode data`)
return null return null
} }
const episode = { const episode = {
enclosure: { enclosure: enclosure,
...item.enclosure[0]['$']
}
} }
episode.enclosure.url = episode.enclosure.url.trim() episode.enclosure.url = episode.enclosure.url.trim()