All files / events user.js

91.67% Statements 11/12
100% Branches 0/0
66.67% Functions 4/6
91.67% Lines 11/12

Press n or j to go to the next uncovered block, b, p or k for the previous block.

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 28 29 30 31 32 33 3415x 15x       16x 16x       1x   1x 1x         1x   1x           1x           15x  
const debug = require('debug')('crowi:events:user')
const { EventEmitter } = require('events')
 
class UserEvent extends EventEmitter {
  constructor(crowi) {
    super()
    this.crowi = crowi
  }
 
  onActivated(user) {
    const Page = this.crowi.model('Page')
 
    const userPagePath = Page.getUserPagePath(user)
    Page.findPage(userPagePath, user, {}, false)
      .then(function(page) {
        // do nothing because user page is already exists.
      })
      .catch(function(err) {
        const body = `# ${user.username}\nThis is ${user.username}'s page`
        // create user page
        Page.create(userPagePath, body, user, {})
          .then(function(page) {
            // page created
            debug('User page created', page)
          })
          .catch(function(err) {
            debug('Failed to create user page', err)
          })
      })
  }
}
 
module.exports = UserEvent