user.js 933 B

123456789101112131415161718192021222324252627282930313233
  1. var debug = require('debug')('growi:events:user');
  2. var util = require('util');
  3. var events = require('events');
  4. function UserEvent(crowi) {
  5. this.crowi = crowi;
  6. events.EventEmitter.call(this);
  7. }
  8. util.inherits(UserEvent, events.EventEmitter);
  9. UserEvent.prototype.onActivated = function(user) {
  10. var User = this.crowi.model('User');
  11. var Page = this.crowi.model('Page');
  12. var userPagePath = Page.getUserPagePath(user);
  13. Page.findPage(userPagePath, user, {}, false)
  14. .then(function(page) {
  15. // do nothing because user page is already exists.
  16. }).catch(function(err) {
  17. var body = `# ${user.username}\nThis is ${user.username}\'s page`;
  18. // create user page
  19. Page.create(userPagePath, body, user, {})
  20. .then(function(page) {
  21. // page created
  22. debug('User page created', page);
  23. }).catch(function(err) {
  24. debug('Failed to create user page', err);
  25. });
  26. });
  27. };
  28. module.exports = UserEvent;