admin_token.js 488 B

12345678910111213141516171819202122232425
  1. let crypto = require('crypto')
  2. module.exports = (sequelize, DataTypes) => {
  3. let AdminToken = sequelize.define('AdminToken', {
  4. token: {
  5. type: DataTypes.STRING,
  6. defaultValue () {
  7. return crypto.randomBytes(64).toString('hex')
  8. }
  9. }
  10. }, {
  11. instanceMethods: {
  12. isValid () {
  13. let ms = Date.now() - this.createdAt
  14. let dayMs = 1000*60*60*24
  15. //Has less than 1 day passed
  16. //since generating token?
  17. return ms / dayMs < 1
  18. }
  19. }
  20. })
  21. return AdminToken
  22. }