- logger.debug('Reporting remote abuse for video %s.', getAPId(object))
-
- const { video } = await getOrCreateVideoAndAccountAndChannel({ videoObject: object })
- const reporterAccount = await sequelizeTypescript.transaction(async t => AccountModel.load(account.id, t))
- const tags = Array.isArray(flag.tag) ? flag.tag : []
- const predefinedReasons = tags.map(tag => videoAbusePredefinedReasonsMap[tag.name])
- .filter(v => !isNaN(v))
- const startAt = flag.startAt
- const endAt = flag.endAt
-
- const videoAbuseInstance = await sequelizeTypescript.transaction(async t => {
- const videoAbuseData = {
- reporterAccountId: account.id,
- reason: flag.content,
- videoId: video.id,
- state: VideoAbuseState.PENDING,
- predefinedReasons,
- startAt,
- endAt
- }