| 1234567891011121314151617181920212223242526272829303132333435 |
- var mongoose = require('mongoose'),
- Account = mongoose.model('Account'),
- EventEmitter = require('events').EventEmitter,
- AccountController = require('../controllers/accounts');
- var eventEmitter = new EventEmitter(),
- ACCOUNTS_DELETE_BY_USER_ID_EVT = 'accounts.delete.by.user.id',
- ENTRIES_DELETE_BY_ACCOUNT_EVT = 'entries.delete.by.account';
- eventEmitter.on(ACCOUNTS_DELETE_BY_USER_ID_EVT, function(user_id) {
- Account.find({user_id: user_id}, function(errors, accounts) {
- if( errors ) {
- console.error('An error occurs during accounts deletion for user ' + user_id, errors);
- return;
- }
-
- if( !accounts ) {
- console.log('No accounts');
- return;
- }
- for( var index in accounts ) {
- eventEmitter.emit(ENTRIES_DELETE_BY_ACCOUNT_EVT, accounts[index]);
- }
- });
- });
- eventEmitter.on(ENTRIES_DELETE_BY_ACCOUNT_EVT, AccountController.delete_account);
- module.exports = {
- events : {
- ACCOUNTS_DELETE_BY_USER_ID_EVT: ACCOUNTS_DELETE_BY_USER_ID_EVT,
- ENTRIES_DELETE_BY_ACCOUNT_EVT: ENTRIES_DELETE_BY_ACCOUNT_EVT
- },
- eventEmitter: eventEmitter
- }
|