Fix:Sync local mobile app progress replacing local media progress id causing duplicate media progress in mobile

This commit is contained in:
advplyr 2022-07-13 19:18:49 -05:00
parent 6c507de501
commit 7c40d26857
2 changed files with 3 additions and 3 deletions

View File

@ -190,6 +190,7 @@ class MeController {
const updatedLocalMediaProgress = []
var numServerProgressUpdates = 0
var localMediaProgress = req.body.localMediaProgress || []
localMediaProgress.forEach(localProgress => {
if (!localProgress.libraryItemId) {
Logger.error(`[MeController] syncLocalMediaProgress invalid local media progress object`, localProgress)
@ -216,7 +217,8 @@ class MeController {
Logger.debug(`[MeController] syncLocalMediaProgress server progress is more recent by ${updateTimeDifference}ms - ${mediaProgress.id}`)
for (const key in localProgress) {
if (mediaProgress[key] != undefined && localProgress[key] !== mediaProgress[key]) {
// Local media progress ID uses the local library item id and server media progress uses the library item id
if (key !== 'id' && mediaProgress[key] != undefined && localProgress[key] !== mediaProgress[key]) {
// Logger.debug(`[MeController] syncLocalMediaProgress key ${key} changed from ${localProgress[key]} to ${mediaProgress[key]} - ${mediaProgress.id}`)
localProgress[key] = mediaProgress[key]
}

View File

@ -1,5 +1,3 @@
const Logger = require('../../Logger')
class MediaProgress {
constructor(progress) {
this.id = null