Merge pull request #3732 from Timtam/allow-mrss-item-enclosures-for-podcasts

check for mrss item media:content when extracting item enclosures
This commit is contained in:
advplyr 2025-01-20 15:08:43 -06:00 committed by GitHub
commit 28681d3783
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -141,15 +141,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()