-import {
- AfterCreate,
- AfterDestroy,
- AllowNull,
- BelongsTo,
- Column,
- CreatedAt, DataType,
- ForeignKey,
- Is,
- Model,
- Table,
- UpdatedAt
-} from 'sequelize-typescript'
-import { SortType } from '../../helpers/utils'
-import { getSortOnModel, throwIfNotValid } from '../utils'
+import { AllowNull, BelongsTo, Column, CreatedAt, DataType, ForeignKey, Is, Model, Table, UpdatedAt } from 'sequelize-typescript'
+import { getSortOnModel, SortType, throwIfNotValid } from '../utils'
import { VideoModel } from './video'
import { isVideoBlacklistReasonValid } from '../../helpers/custom-validators/video-blacklist'
-import { Emailer } from '../../lib/emailer'
import { VideoBlacklist } from '../../../shared/models/videos'
import { CONSTRAINTS_FIELDS } from '../../initializers'
@Column(DataType.STRING(CONSTRAINTS_FIELDS.VIDEO_BLACKLIST.REASON.max))
reason: string
+ @AllowNull(false)
+ @Column
+ unfederated: boolean
+
@CreatedAt
createdAt: Date
})
Video: VideoModel
- @AfterCreate
- static sendBlacklistEmailNotification (instance: VideoBlacklistModel) {
- return Emailer.Instance.addVideoBlacklistReportJob(instance.videoId, instance.reason)
- }
-
- @AfterDestroy
- static sendUnblacklistEmailNotification (instance: VideoBlacklistModel) {
- return Emailer.Instance.addVideoUnblacklistReportJob(instance.videoId)
- }
-
static listForApi (start: number, count: number, sort: SortType) {
const query = {
offset: start,
createdAt: this.createdAt,
updatedAt: this.updatedAt,
reason: this.reason,
+ unfederated: this.unfederated,
video: {
id: video.id,