Skip to content

Commit 726a9ea

Browse files
committed
Fix local playback sync
1 parent 6d52f88 commit 726a9ea

File tree

2 files changed

+6
-8
lines changed

2 files changed

+6
-8
lines changed

server/controllers/EmailController.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ class EmailController {
106106
return res.sendStatus(403)
107107
}
108108

109-
const libraryItem = await Database.libraryItemModel.getOldById(req.body.libraryItemId)
109+
const libraryItem = await Database.libraryItemModel.getExpandedById(req.body.libraryItemId)
110110
if (!libraryItem) {
111111
return res.status(404).send('Library item not found')
112112
}

server/managers/PlaybackSessionManager.js

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -120,8 +120,8 @@ class PlaybackSessionManager {
120120
*/
121121
async syncLocalSession(user, sessionJson, deviceInfo) {
122122
// TODO: Combine libraryItem query with library query
123-
const libraryItem = await Database.libraryItemModel.getOldById(sessionJson.libraryItemId)
124-
const episode = sessionJson.episodeId && libraryItem && libraryItem.isPodcast ? libraryItem.media.getEpisode(sessionJson.episodeId) : null
123+
const libraryItem = await Database.libraryItemModel.getExpandedById(sessionJson.libraryItemId)
124+
const episode = sessionJson.episodeId && libraryItem && libraryItem.isPodcast ? libraryItem.media.podcastEpisodes.find((pe) => pe.id === sessionJson.episodeId) : null
125125
if (!libraryItem || (libraryItem.isPodcast && !episode)) {
126126
Logger.error(`[PlaybackSessionManager] syncLocalSession: Media item not found for session "${sessionJson.displayTitle}" (${sessionJson.id})`)
127127
return {
@@ -175,7 +175,8 @@ class PlaybackSessionManager {
175175
// New session from local
176176
session = new PlaybackSession(sessionJson)
177177
session.deviceInfo = deviceInfo
178-
session.setDuration(libraryItem, sessionJson.episodeId)
178+
session.duration = libraryItem.media.getPlaybackDuration(sessionJson.episodeId)
179+
179180
Logger.debug(`[PlaybackSessionManager] Inserting new session for "${session.displayTitle}" (${session.id})`)
180181
await Database.createPlaybackSession(session)
181182
} else {
@@ -346,7 +347,7 @@ class PlaybackSessionManager {
346347
*/
347348
async syncSession(user, session, syncData) {
348349
// TODO: Combine libraryItem query with library query
349-
const libraryItem = await Database.libraryItemModel.getOldById(session.libraryItemId)
350+
const libraryItem = await Database.libraryItemModel.getExpandedById(session.libraryItemId)
350351
if (!libraryItem) {
351352
Logger.error(`[PlaybackSessionManager] syncSession Library Item not found "${session.libraryItemId}"`)
352353
return null
@@ -381,9 +382,6 @@ class PlaybackSessionManager {
381382
})
382383
}
383384
this.saveSession(session)
384-
return {
385-
libraryItem
386-
}
387385
}
388386

389387
/**

0 commit comments

Comments
 (0)