Built motion from commit 7afcba0.|0.0.74
[motion.git] / server / models / report_chat_room.js
1 'use strict';
2
3 /**
4  * Report Chat Room Log Model
5  */
6
7 var moment = require('moment');
8
9 module.exports = function(sequelize, DataTypes) {
10
11   var ReportChatRoom = sequelize.define('ReportChatRoom', {
12     uniqueid: {
13       type: DataTypes.STRING,
14       unique: true
15     },
16     websitename: DataTypes.STRING,
17     websiteaddress: DataTypes.STRING,
18     websiteid: DataTypes.INTEGER,
19     application: DataTypes.STRING,
20     visitorid: DataTypes.STRING,
21     visitorname: DataTypes.STRING,
22     visitoremail: DataTypes.STRING,
23     memberid: DataTypes.STRING,
24     membername: DataTypes.STRING,
25     queueid: DataTypes.INTEGER,
26     queuename: DataTypes.STRING,
27     roomid: DataTypes.INTEGER,
28     data1: DataTypes.STRING,
29     data2: DataTypes.STRING,
30     data3: DataTypes.STRING,
31     labelData1: DataTypes.STRING,
32     labelData2: DataTypes.STRING,
33     labelData3: DataTypes.STRING,
34     abandon: {
35       type: DataTypes.BOOLEAN,
36       defaultValue: 0
37     },
38     complete: {
39       type: DataTypes.BOOLEAN,
40       defaultValue: 0
41     },
42     completeReason: DataTypes.ENUM('agent', 'requester'),
43     completeAt: DataTypes.DATE,
44     joinAt: DataTypes.DATE,
45     leaveAt: DataTypes.DATE,
46     unmanaged: {
47       type: DataTypes.BOOLEAN,
48       defaultValue: 0
49     },
50     disposition: DataTypes.STRING,
51     note: DataTypes.TEXT,
52     urating: {
53       type: DataTypes.INTEGER,
54       defaultValue: 0,
55       validate: {
56         min: 0,
57         max: 10
58       }
59     },
60     crating: DataTypes.ENUM('good', 'bad'),
61     cratingMessage: DataTypes.TEXT
62   }, {
63     tableName: 'report_chat_room'
64   });
65
66   return ReportChatRoom;
67 };