1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
const { DataTypes } = require('sequelize');
const attributes = {
id: {
type: DataTypes.INTEGER(11),
primaryKey: true,
autoIncrement: true,
allowNull: false
},
user_id: {
type: DataTypes.INTEGER(11),
references: { model: User, key: 'id' },
allowNull: false,
comment: "Referral granted to this user (updated when token used)"
},
username: {
type: DataTypes.STRING(255),
allowNull: false,
},
gravitar: {
type: DataTypes.STRING(255),
},
fiat: {
type: DataTypes.BOOLEAN,
defaultValue: true,
allowNull: false,
comment: "What is this for ?"
},
default_crypto_unit: {
type: DataTypes.ENUM,
values: ['SAT', 'BTC'],
defaultValue: 'SAT',
allowNull: false
},
default_currency_code: {
type: DataTypes.INTEGER(11),
references: { model: Currency, key: 'code' },
defaultValue: "CAD",
allowNull: false
},
currencies: {
type: DataTypes.JSON,
allowNull: false,
defaultValue: ["USD"],
comment: "List of currency options to show for this user",
}
}
const options = {
tableName: "user_preferences",
comment: "settings that can be controlled by users themselves",
timestamps: true,
createdAt: 'created_at',
updatedAt: 'updated_at',
indexes: [
{fields: ['user_id']}
]
};
db["UserPreference"] = db.define("user_preferences_model", attributes, options);
|