mirror of
https://github.com/advplyr/audiobookshelf.git
synced 2025-08-04 02:05:06 +02:00
Add:Player queue for audiobooks #1077
This commit is contained in:
parent
3357ccfaf3
commit
78559520ab
12 changed files with 221 additions and 24 deletions
|
@ -127,12 +127,38 @@ export default {
|
|||
this.processingGoToTimestamp = false
|
||||
return
|
||||
}
|
||||
if (session.episodeId && !libraryItem.media.episodes.find((ep) => ep.id === session.episodeId)) {
|
||||
if (session.episodeId && !libraryItem.media.episodes.some((ep) => ep.id === session.episodeId)) {
|
||||
this.$toast.error('Failed to get podcast episode')
|
||||
this.processingGoToTimestamp = false
|
||||
return
|
||||
}
|
||||
|
||||
var queueItem = {}
|
||||
if (session.episodeId) {
|
||||
var episode = libraryItem.media.episodes.find((ep) => ep.id === session.episodeId)
|
||||
queueItem = {
|
||||
libraryItemId: libraryItem.id,
|
||||
libraryId: libraryItem.libraryId,
|
||||
episodeId: episode.id,
|
||||
title: episode.title,
|
||||
subtitle: libraryItem.media.metadata.title,
|
||||
caption: episode.publishedAt ? `Published ${this.$formatDate(episode.publishedAt, 'MMM do, yyyy')}` : 'Unknown publish date',
|
||||
duration: episode.audioFile.duration || null,
|
||||
coverPath: libraryItem.media.coverPath || null
|
||||
}
|
||||
} else {
|
||||
queueItem = {
|
||||
libraryItemId: libraryItem.id,
|
||||
libraryId: libraryItem.libraryId,
|
||||
episodeId: null,
|
||||
title: libraryItem.media.metadata.title,
|
||||
subtitle: libraryItem.media.metadata.authors.map((au) => au.name).join(', '),
|
||||
caption: '',
|
||||
duration: libraryItem.media.duration || null,
|
||||
coverPath: libraryItem.media.coverPath || null
|
||||
}
|
||||
}
|
||||
|
||||
const payload = {
|
||||
message: this.$getString('MessageStartPlaybackAtTime', [session.displayTitle, this.$secondsToTimestamp(session.currentTime)]),
|
||||
callback: (confirmed) => {
|
||||
|
@ -140,7 +166,8 @@ export default {
|
|||
this.$eventBus.$emit('play-item', {
|
||||
libraryItemId: libraryItem.id,
|
||||
episodeId: session.episodeId || null,
|
||||
startTime: session.currentTime
|
||||
startTime: session.currentTime,
|
||||
queueItems: [queueItem]
|
||||
})
|
||||
}
|
||||
this.processingGoToTimestamp = false
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue