mirror of
https://github.com/advplyr/audiobookshelf.git
synced 2026-07-09 10:51:37 +00:00
Compare commits
2 commits
293851d931
...
30c327d92a
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
30c327d92a | ||
|
|
596bddf791 |
1 changed files with 14 additions and 5 deletions
|
|
@ -183,7 +183,7 @@ class MediaProgress extends Model {
|
||||||
* @param {import('./User').ProgressUpdatePayload} progressPayload
|
* @param {import('./User').ProgressUpdatePayload} progressPayload
|
||||||
* @returns {Promise<MediaProgress>}
|
* @returns {Promise<MediaProgress>}
|
||||||
*/
|
*/
|
||||||
applyProgressUpdate(progressPayload) {
|
async applyProgressUpdate(progressPayload) {
|
||||||
if (!this.extraData) this.extraData = {}
|
if (!this.extraData) this.extraData = {}
|
||||||
if (progressPayload.isFinished !== undefined) {
|
if (progressPayload.isFinished !== undefined) {
|
||||||
if (progressPayload.isFinished && !this.isFinished) {
|
if (progressPayload.isFinished && !this.isFinished) {
|
||||||
|
|
@ -243,14 +243,23 @@ class MediaProgress extends Model {
|
||||||
this.finishedAt = null
|
this.finishedAt = null
|
||||||
}
|
}
|
||||||
|
|
||||||
|
await this.save()
|
||||||
|
|
||||||
// For local sync
|
// For local sync
|
||||||
if (progressPayload.lastUpdate) {
|
if (progressPayload.lastUpdate) {
|
||||||
this.updatedAt = progressPayload.lastUpdate
|
if (isNaN(new Date(progressPayload.lastUpdate))) {
|
||||||
Logger.info(`[MediaProgress] Manually setting updatedAt to ${this.updatedAt} (media item ${this.mediaItemId})`)
|
Logger.warn(`[MediaProgress] Invalid date provided for lastUpdate: ${progressPayload.lastUpdate} (media item ${this.mediaItemId})`)
|
||||||
this.changed('updatedAt', true)
|
} else {
|
||||||
|
const escapedDate = this.sequelize.escape(new Date(progressPayload.lastUpdate))
|
||||||
|
Logger.info(`[MediaProgress] Manually setting updatedAt to ${escapedDate} (media item ${this.mediaItemId})`)
|
||||||
|
|
||||||
|
await this.sequelize.query(`UPDATE "mediaProgresses" SET "updatedAt" = ${escapedDate} WHERE "id" = '${this.id}'`)
|
||||||
|
|
||||||
|
await this.reload()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return this.save({ silent: !!progressPayload.lastUpdate })
|
return this
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue