allow setting createdAt and respect set finishedAt when syncing progress

This commit is contained in:
Lauri Vuorela 2024-10-22 23:58:09 +02:00
parent 9896e4381b
commit 9b01d11b27

View File

@ -607,13 +607,14 @@ class User extends Model {
ebookLocation: progressPayload.ebookLocation || null, ebookLocation: progressPayload.ebookLocation || null,
ebookProgress: isNullOrNaN(progressPayload.ebookProgress) ? 0 : Number(progressPayload.ebookProgress), ebookProgress: isNullOrNaN(progressPayload.ebookProgress) ? 0 : Number(progressPayload.ebookProgress),
finishedAt: progressPayload.finishedAt || null, finishedAt: progressPayload.finishedAt || null,
createdAt: progressPayload.createdAt || new Date(),
extraData: { extraData: {
libraryItemId: progressPayload.libraryItemId, libraryItemId: progressPayload.libraryItemId,
progress: isNullOrNaN(progressPayload.progress) ? 0 : Number(progressPayload.progress) progress: isNullOrNaN(progressPayload.progress) ? 0 : Number(progressPayload.progress)
} }
} }
if (newMediaProgressPayload.isFinished) { if (newMediaProgressPayload.isFinished) {
newMediaProgressPayload.finishedAt = new Date() newMediaProgressPayload.finishedAt = newMediaProgressPayload.finishedAt || new Date()
newMediaProgressPayload.extraData.progress = 1 newMediaProgressPayload.extraData.progress = 1
} else { } else {
newMediaProgressPayload.finishedAt = null newMediaProgressPayload.finishedAt = null