X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fmodels%2Fvideo%2Fschedule-video-update.ts;h=b3cf269667f5b173c32866d789f0796ec43400b9;hb=6c1da7937cedbc1d4013cff0686d785247229c52;hp=b9e9ed9a08692ce87161ea2cb103b3853fafeb06;hpb=1735c825726edaa0af5035cb6cbb0cc0db502c6d;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/models/video/schedule-video-update.ts b/server/models/video/schedule-video-update.ts index b9e9ed9a0..b3cf26966 100644 --- a/server/models/video/schedule-video-update.ts +++ b/server/models/video/schedule-video-update.ts @@ -1,7 +1,9 @@ +import { Op, Transaction } from 'sequelize' import { AllowNull, BelongsTo, Column, CreatedAt, Default, ForeignKey, Model, Table, UpdatedAt } from 'sequelize-typescript' -import { ScopeNames as VideoScopeNames, VideoModel } from './video' +import { MScheduleVideoUpdateFormattable, MScheduleVideoUpdate } from '@server/types/models' +import { AttributesOnly } from '@shared/typescript-utils' import { VideoPrivacy } from '../../../shared/models/videos' -import { Op, Transaction } from 'sequelize' +import { VideoModel } from './video' @Table({ tableName: 'scheduleVideoUpdate', @@ -15,7 +17,7 @@ import { Op, Transaction } from 'sequelize' } ] }) -export class ScheduleVideoUpdateModel extends Model { +export class ScheduleVideoUpdateModel extends Model>> { @AllowNull(false) @Default(null) @@ -25,7 +27,7 @@ export class ScheduleVideoUpdateModel extends Model { @AllowNull(true) @Default(null) @Column - privacy: VideoPrivacy.PUBLIC | VideoPrivacy.UNLISTED + privacy: VideoPrivacy.PUBLIC | VideoPrivacy.UNLISTED | VideoPrivacy.INTERNAL @CreatedAt createdAt: Date @@ -60,28 +62,17 @@ export class ScheduleVideoUpdateModel extends Model { .then(res => !!res) } - static listVideosToUpdate (t: Transaction) { + static listVideosToUpdate (transaction?: Transaction) { const query = { where: { updateAt: { [Op.lte]: new Date() } }, - include: [ - { - model: VideoModel.scope( - [ - VideoScopeNames.WITH_FILES, - VideoScopeNames.WITH_ACCOUNT_DETAILS, - VideoScopeNames.WITH_BLACKLISTED - ] - ) - } - ], - transaction: t + transaction } - return ScheduleVideoUpdateModel.findAll(query) + return ScheduleVideoUpdateModel.findAll(query) } static deleteByVideoId (videoId: number, t: Transaction) { @@ -95,7 +86,7 @@ export class ScheduleVideoUpdateModel extends Model { return ScheduleVideoUpdateModel.destroy(query) } - toFormattedJSON () { + toFormattedJSON (this: MScheduleVideoUpdateFormattable) { return { updateAt: this.updateAt, privacy: this.privacy || undefined