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) {
// 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`)
return null
}
const episode = {
enclosure: {
...item.enclosure[0]['$']
}
enclosure: enclosure,
}
episode.enclosure.url = episode.enclosure.url.trim()