Built motion from commit 1038d87.|0.0.141
[motion.git] / server / models / report_member.js
1 'use strict';
2
3 var moment = require('moment');
4
5 module.exports = function(sequelize, DataTypes) {
6
7   var ReportMember = sequelize.define('ReportMember', {
8     channel: DataTypes.STRING,
9     membername: DataTypes.STRING,
10     interface: DataTypes.STRING,
11     type: {
12       type: DataTypes.STRING,
13       defaultValue: 'DEFAULT PAUSE'
14     },
15     duration: DataTypes.INTEGER,
16     enterAt: DataTypes.DATE,
17     exitAt: {
18       type: DataTypes.DATE,
19       set: function(exitAt) {
20         var a = moment(exitAt);
21         var b = moment(this.getDataValue('enterAt'));
22         var duration = a.diff(b, 'seconds');
23
24         this.setDataValue('exitAt', exitAt);
25         this.setDataValue('duration', duration || null);
26       }
27     },
28     data1: DataTypes.STRING,
29     data2: DataTypes.STRING,
30     data3: DataTypes.STRING,
31     data4: DataTypes.STRING,
32     data5: DataTypes.STRING,
33     role: DataTypes.STRING,
34     internal: DataTypes.INTEGER(11),
35     uniqueid: DataTypes.STRING
36   }, {
37     tableName: 'report_member'
38   });
39
40   return ReportMember;
41 };