diff options
| author | Ran Guin <[email protected]> | 2021-07-14 18:01:02 -0700 |
|---|---|---|
| committer | Ran Guin <[email protected]> | 2021-07-14 18:01:02 -0700 |
| commit | 54d6fae88b50c6cc27d52f2fdc387163f3531751 (patch) | |
| tree | 12cd282d41c44a754137a5867275fd83c9e395a7 /db/models/waiting_list.js | |
| parent | 4eacfda951f8275ac4f3a1283368884e53285ed0 (diff) | |
| download | coinos-server-54d6fae88b50c6cc27d52f2fdc387163f3531751.tar.gz coinos-server-54d6fae88b50c6cc27d52f2fdc387163f3531751.zip | |
add referrals, waiting list tables to legacy schema
Diffstat (limited to 'db/models/waiting_list.js')
| -rw-r--r-- | db/models/waiting_list.js | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/db/models/waiting_list.js b/db/models/waiting_list.js new file mode 100644 index 00000000..a5c18f65 --- /dev/null +++ b/db/models/waiting_list.js @@ -0,0 +1,44 @@ +const { DataTypes } = require('sequelize'); + +const attributes = { + id: { + type: DataTypes.INTEGER(11), + primaryKey: true, + autoIncrement: true, + allowNull: false + }, + email: { + type: DataTypes.STRING(255), + validate: { + isEmail: true + } + }, + phone: { + type: DataTypes.STRING(255), + validate: { + is: /^[0-9]+$/ // replace spaces, brackets, dashes dynamically prior to create + } + }, + status: { + type: DataTypes.ENUM, + values: ['pending', 'activated', 'expired', 'cancelled'], + defaultValue: 'pending', + allowNull: false + } +} + +const options = { + tableName: "waiting_list", + comment: "Users on waiting list", + timestamps: true, + createdAt: 'created_at', + updatedAt: 'updated_at', + indexes: [ + { + unique: true, + fields: ['email', 'sms'] + } + ] +}; + +db["WaitingList"] = db.define("waiting_list_model", attributes, options); |
