]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - server/initializers/migrations/0245-user-blocked.ts
Add state and moderationComment for abuses on server side
[github/Chocobozzz/PeerTube.git] / server / initializers / migrations / 0245-user-blocked.ts
1 import * as Sequelize from 'sequelize'
2 import { CONSTRAINTS_FIELDS } from '../constants'
3
4 async function up (utils: {
5 transaction: Sequelize.Transaction
6 queryInterface: Sequelize.QueryInterface
7 sequelize: Sequelize.Sequelize
8 }): Promise<any> {
9 {
10 const data = {
11 type: Sequelize.BOOLEAN,
12 allowNull: true,
13 defaultValue: null
14 }
15 await utils.queryInterface.addColumn('user', 'blocked', data)
16 }
17
18 {
19 const query = 'UPDATE "user" SET "blocked" = false'
20 await utils.sequelize.query(query)
21 }
22
23 {
24 const data = {
25 type: Sequelize.BOOLEAN,
26 allowNull: false,
27 defaultValue: null
28 }
29 await utils.queryInterface.changeColumn('user', 'blocked', data)
30 }
31
32 {
33 const data = {
34 type: Sequelize.STRING(CONSTRAINTS_FIELDS.USERS.BLOCKED_REASON.max),
35 allowNull: true,
36 defaultValue: null
37 }
38 await utils.queryInterface.addColumn('user', 'blockedReason', data)
39 }
40 }
41
42 function down (options) {
43 throw new Error('Not implemented.')
44 }
45
46 export { up, down }