Built motion from commit ec3ecc5.|1.0.2
[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         if (!this.getDataValue('duration')) {
21           var a = moment(exitAt);
22           var b = moment(this.getDataValue('enterAt'));
23           var duration = a.diff(b, 'seconds');
24           this.setDataValue('duration', duration || null);
25         }
26
27         this.setDataValue('exitAt', exitAt);
28       }
29     },
30     data1: DataTypes.STRING,
31     data2: DataTypes.STRING,
32     data3: DataTypes.STRING,
33     data4: DataTypes.STRING,
34     data5: DataTypes.STRING,
35     role: DataTypes.STRING,
36     internal: DataTypes.INTEGER(11),
37     uniqueid: DataTypes.STRING
38   }, {
39     tableName: 'report_member'
40   });
41
42   return ReportMember;
43 };