aboutsummaryrefslogtreecommitdiff
path: root/vnext/server/db/Users.js
blob: 3db3eb5b6c89ccce632dfe2c7f7091af3187f22e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import { DataTypes, Op } from 'sequelize'
import db from './index'

export const User = db.define('user', {
  id: {
    type: DataTypes.INTEGER,
    primaryKey: true
  },
  nick: DataTypes.STRING,
  banned: DataTypes.INTEGER,
  last_seen: DataTypes.DATE
})

export const getMonthlyActiveUsers = async () => {
  const seenDate = new Date()
  seenDate.setMonth(seenDate.getMonth() - 1)
  return await User.count({
    where: {
      banned: {
        [Op.eq]: 0
      },
      last_seen: {
        [Op.gt]: seenDate
      }
    }
  })
}