Update remove old sync local sessions endpoint & update MeController routes to use new user model

This commit is contained in:
advplyr 2024-08-11 13:09:53 -05:00
parent 1923854202
commit 9facf77ff1
6 changed files with 156 additions and 186 deletions

View file

@ -425,6 +425,9 @@ class User extends Model {
get isUser() {
return this.type === 'user'
}
get isGuest() {
return this.type === 'guest'
}
get canAccessExplicitContent() {
return !!this.permissions?.accessExplicitContent && this.isActive
}
@ -780,6 +783,38 @@ class User extends Model {
await this.save()
return true
}
/**
*
* @param {string} seriesId
* @returns {Promise<boolean>}
*/
async addSeriesToHideFromContinueListening(seriesId) {
if (!this.extraData) this.extraData = {}
const seriesHideFromContinueListening = this.extraData.seriesHideFromContinueListening || []
if (seriesHideFromContinueListening.includes(seriesId)) return false
seriesHideFromContinueListening.push(seriesId)
this.extraData.seriesHideFromContinueListening = seriesHideFromContinueListening
this.changed('extraData', true)
await this.save()
return true
}
/**
*
* @param {string} seriesId
* @returns {Promise<boolean>}
*/
async removeSeriesFromHideFromContinueListening(seriesId) {
if (!this.extraData) this.extraData = {}
let seriesHideFromContinueListening = this.extraData.seriesHideFromContinueListening || []
if (!seriesHideFromContinueListening.includes(seriesId)) return false
seriesHideFromContinueListening = seriesHideFromContinueListening.filter((sid) => sid !== seriesId)
this.extraData.seriesHideFromContinueListening = seriesHideFromContinueListening
this.changed('extraData', true)
await this.save()
return true
}
}
module.exports = User