mirror of
				https://github.com/advplyr/audiobookshelf.git
				synced 2025-10-27 11:18:14 +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