3 module.exports = function(sequelize, DataTypes) {
4 var SmsRoom = sequelize.define('SmsRoom', {
6 type: DataTypes.STRING,
12 type: DataTypes.ENUM('NEW', 'OPEN', 'CLOSED', 'UNMANAGED'),
19 if (this.getDataValue('tags')) {
20 tags = this.getDataValue('tags').split(';');
28 this.setDataValue('tags', val && val.length ? val.join(';') + ';' : null);
32 type: DataTypes.BOOLEAN,
36 type: DataTypes.STRING
39 type: DataTypes.INTEGER
42 type: DataTypes.BOOLEAN,
46 tableName: 'sms_rooms',
47 associate: function(models) {
49 SmsRoom.hasMany(models.SmsMessage);
50 SmsRoom.belongsToMany(models.User, {
51 through: 'user_has_sms_rooms'
53 SmsRoom.belongsTo(models.SmsAccount);
54 SmsRoom.addScope('default', {
59 model: models.SmsAccount
61 model: models.SmsMessage,
64 attributes: ['id', 'name', 'fullname', 'email']
68 attributes: ['id', 'name', 'fullname', 'email']
71 SmsRoom.addScope('agent', function(id) {