mirror of
https://github.com/advplyr/audiobookshelf.git
synced 2025-01-03 00:06:46 +01:00
RSS feeds for single file audiobooks now use book title
This commit is contained in:
parent
ecefb30f3d
commit
5e7bca02b3
@ -101,7 +101,11 @@ class Feed {
|
|||||||
feedEpisode.setFromPodcastEpisode(libraryItem, serverAddress, slug, episode, this.meta)
|
feedEpisode.setFromPodcastEpisode(libraryItem, serverAddress, slug, episode, this.meta)
|
||||||
this.episodes.push(feedEpisode)
|
this.episodes.push(feedEpisode)
|
||||||
})
|
})
|
||||||
} else { // AUDIOBOOK EPISODES
|
} else if (media.tracks.length == 1) { // SINGLE FILE AUDIOBOOKS
|
||||||
|
var feedEpisode = new FeedEpisode()
|
||||||
|
feedEpisode.setFromSingleAudiobookTrack(libraryItem, serverAddress, slug, media.tracks[0], this.meta)
|
||||||
|
this.episodes.push(feedEpisode)
|
||||||
|
} else { // MULTI-FILE AUDIOBOOKS
|
||||||
media.tracks.forEach((audioTrack) => {
|
media.tracks.forEach((audioTrack) => {
|
||||||
var feedEpisode = new FeedEpisode()
|
var feedEpisode = new FeedEpisode()
|
||||||
feedEpisode.setFromAudiobookTrack(libraryItem, serverAddress, slug, audioTrack, this.meta)
|
feedEpisode.setFromAudiobookTrack(libraryItem, serverAddress, slug, audioTrack, this.meta)
|
||||||
|
@ -118,6 +118,35 @@ class FeedEpisode {
|
|||||||
this.fullPath = audioTrack.metadata.path
|
this.fullPath = audioTrack.metadata.path
|
||||||
}
|
}
|
||||||
|
|
||||||
|
setFromSingleAudiobookTrack(libraryItem, serverAddress, slug, audioTrack, meta) {
|
||||||
|
// Example: <pubDate>Fri, 04 Feb 2015 00:00:00 GMT</pubDate>
|
||||||
|
const audiobookPubDate = date.format(new Date(libraryItem.addedAt), 'ddd, DD MMM YYYY HH:mm:ss [GMT]')
|
||||||
|
|
||||||
|
const contentUrl = `/feed/${slug}/item/${audioTrack.index}/${audioTrack.metadata.filename}`
|
||||||
|
const media = libraryItem.media
|
||||||
|
const mediaMetadata = media.metadata
|
||||||
|
|
||||||
|
var title = libraryItem.media.metadata.title
|
||||||
|
|
||||||
|
this.id = String(audioTrack.index)
|
||||||
|
this.title = title
|
||||||
|
this.description = mediaMetadata.description || ''
|
||||||
|
this.enclosure = {
|
||||||
|
url: `${serverAddress}${contentUrl}`,
|
||||||
|
type: audioTrack.mimeType,
|
||||||
|
size: audioTrack.metadata.size
|
||||||
|
}
|
||||||
|
this.pubDate = audiobookPubDate
|
||||||
|
this.link = meta.link
|
||||||
|
this.author = meta.author
|
||||||
|
this.explicit = mediaMetadata.explicit
|
||||||
|
this.duration = audioTrack.duration
|
||||||
|
this.libraryItemId = libraryItem.id
|
||||||
|
this.episodeId = null
|
||||||
|
this.trackIndex = audioTrack.index
|
||||||
|
this.fullPath = audioTrack.metadata.path
|
||||||
|
}
|
||||||
|
|
||||||
getRSSData() {
|
getRSSData() {
|
||||||
return {
|
return {
|
||||||
title: this.title,
|
title: this.title,
|
||||||
|
Loading…
Reference in New Issue
Block a user