mirror of
https://github.com/mmumshad/ansible-playable.git
synced 2025-02-15 04:42:05 +00:00
35 lines
638 B
JavaScript
35 lines
638 B
JavaScript
/**
|
|
* User model events
|
|
*/
|
|
|
|
'use strict';
|
|
|
|
import {EventEmitter} from 'events';
|
|
var UserEvents = new EventEmitter();
|
|
|
|
// Set max event listeners (0 == unlimited)
|
|
UserEvents.setMaxListeners(0);
|
|
|
|
// Model events
|
|
var events = {
|
|
save: 'save',
|
|
remove: 'remove'
|
|
};
|
|
|
|
// Register the event emitter to the model events
|
|
function registerEvents(User) {
|
|
for(var e in events) {
|
|
let event = events[e];
|
|
User.post(e, emitEvent(event));
|
|
}
|
|
}
|
|
|
|
function emitEvent(event) {
|
|
return function(doc) {
|
|
UserEvents.emit(`${event}:${doc._id}`, doc);
|
|
UserEvents.emit(event, doc);
|
|
};
|
|
}
|
|
|
|
export {registerEvents};
|
|
export default UserEvents;
|