Feature: First version of the REST API done

This commit is contained in:
2015-08-14 08:04:31 +00:00
commit e6fc0be0ed
28 changed files with 3170 additions and 0 deletions

35
app/events/listeners.js Normal file
View File

@@ -0,0 +1,35 @@
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
}