@speakr/speakr-module-services
Version:
SPEAKR Shared Service Module
117 lines (113 loc) • 2.25 kB
JavaScript
'use strict';
let _ = require('underscore');
module.exports = function(sequelize, DataTypes) {
let users = sequelize.define('users', {
id: {
type: DataTypes.INTEGER,
allowNull: false,
primaryKey: true,
autoIncrement: true
},
first_name: {
type: DataTypes.STRING,
allowNull: true
},
last_name: {
type: DataTypes.STRING,
allowNull: true
},
username: {
type: DataTypes.STRING,
allowNull: false,
defaultValue: ''
},
encrypted_password: {
type: DataTypes.STRING,
allowNull: false,
defaultValue: ''
},
reset_password_token: {
type: DataTypes.STRING,
allowNull: true
},
reset_password_sent_at: {
type: DataTypes.DATE,
allowNull: true
},
remember_created_at: {
type: DataTypes.DATE,
allowNull: true
},
sign_in_count: {
type: DataTypes.INTEGER,
allowNull: true,
defaultValue: '0'
},
current_sign_in_at: {
type: DataTypes.DATE,
allowNull: true
},
last_sign_in_at: {
type: DataTypes.DATE,
allowNull: true
},
current_sign_in_ip: {
type: DataTypes.STRING,
allowNull: true
},
last_sign_in_ip: {
type: DataTypes.STRING,
allowNull: true
},
created_at: {
type: DataTypes.DATE,
allowNull: false
},
updated_at: {
type: DataTypes.DATE,
allowNull: false
},
deleted_at: DataTypes.DATE,
name: {
type: DataTypes.STRING,
allowNull: true
},
id_hash: {
type: DataTypes.STRING,
allowNull: false
},
agency_id: {
type: DataTypes.INTEGER,
allowNull: true,
references: {
model: 'agencies',
key: 'id'
}
},
active: {
type: DataTypes.BOOLEAN,
allowNull: true
},
network_id: {
type: DataTypes.INTEGER,
allowNull: true,
references: {
model: 'networks',
key: 'id'
}
},
email: {
type: DataTypes.STRING,
allowNull: true
},
avatar: {
type: DataTypes.TEXT,
allowNull: true
}
},
{
underscored: true,
paranoid: true,
});
return users;
};