GeezerVison is showing github.com — fix(events): mongoose event registration · angular-fullstack/generator-angular-fullstack@e3ed67f
This repository was archived by the owner on Jul 29, 2026. It is now read-only.
File treeExpand file treeCollapse file tree Open diff view settings app/server/api/user(auth)
Expand file treeCollapse file tree Open diff view settings Collapse file Copy file name to clipboardExpand all lines: templates/app/server/api/user(auth)/user.events.js +10-7Lines changed: 10 additions & 7 deletions | Original file line number | Diff line number | Diff line change |
|---|
| 4 | 4 |
| 5 | 5 | 'use strict'; | 6 | 6 |
| 7 | | -import {EventEmitter} from 'events';<% if (filters.mongooseModels) { %> | 8 | | -import User from './user.model';<% } if (filters.sequelizeModels) { %> | | 7 | +import {EventEmitter} from 'events';<% if (filters.sequelizeModels) { %> | 9 | 8 | import {User} from '../../sqldb';<% } %> | 10 | 9 | var UserEvents = new EventEmitter(); | 11 | 10 |
| @@ -24,10 +23,12 @@ var events = { | 24 | 23 | };<% } %> | 25 | 24 |
| 26 | 25 | // Register the event emitter to the model events | 27 | | -for(var e in events) { | 28 | | - let event = events[e];<% if (filters.mongooseModels) { %> | 29 | | - User.schema.post(e, emitEvent(event));<% } if (filters.sequelizeModels) { %> | 30 | | - User.hook(e, emitEvent(event));<% } %> | | 26 | +function registerEvents(User) { | | 27 | + for(var e in events) { | | 28 | + let event = events[e];<% if (filters.mongooseModels) { %> | | 29 | + User.post(e, emitEvent(event));<% } if (filters.sequelizeModels) { %> | | 30 | + User.hook(e, emitEvent(event));<% } %> | | 31 | + } | 31 | 32 | } | 32 | 33 |
| 33 | 34 | function emitEvent(event) { | @@ -37,5 +38,7 @@ function emitEvent(event) { | 37 | 38 | done(null);<% } %> | 38 | 39 | } | 39 | 40 | } | 40 | | - | | 41 | +<% if (filters.sequelizeModels) { %> | | 42 | +registerEvents(User);<% } if (filters.mongooseModels) { %> | | 43 | +export {registerEvents};<% } %> | 41 | 44 | export default UserEvents; |
Collapse file Copy file name to clipboardExpand all lines: templates/app/server/api/user(auth)/user.model(mongooseModels).js +3-1Lines changed: 3 additions & 1 deletion | Original file line number | Diff line number | Diff line change |
|---|
| 2 | 2 | /*eslint no-invalid-this:0*/ | 3 | 3 | import crypto from 'crypto'; | 4 | 4 | mongoose.Promise = require('bluebird'); | 5 | | -import mongoose, {Schema} from 'mongoose';<% if(filters.oauth) { %> | | 5 | +import mongoose, {Schema} from 'mongoose'; | | 6 | +import {registerEvents} from './user.events';<% if(filters.oauth) { %> | 6 | 7 |
| 7 | 8 | const authTypes = ['github', 'twitter', 'facebook', 'google'];<% } %> | 8 | 9 |
| @@ -257,4 +258,5 @@ UserSchema.methods = { | 257 | 258 | } | 258 | 259 | }; | 259 | 260 |
| | 261 | +registerEvents(UserSchema); | 260 | 262 | export default mongoose.model('User', UserSchema); |
Collapse file Copy file name to clipboardExpand all lines: templates/endpoint/basename.events(models).js +10-7Lines changed: 10 additions & 7 deletions | Original file line number | Diff line number | Diff line change |
|---|
| 4 | 4 |
| 5 | 5 | 'use strict'; | 6 | 6 |
| 7 | | -import {EventEmitter} from 'events';<% if(filters.mongooseModels) { %> | 8 | | -import <%= classedName %> from './<%= basename %>.model';<% } if(filters.sequelizeModels) { %> | | 7 | +import {EventEmitter} from 'events';<% if(filters.sequelizeModels) { %> | 9 | 8 | var <%= classedName %> = require('<%= relativeRequire(config.get('registerModelsFile')) %>').<%= classedName %>;<% } %> | 10 | 9 | var <%= classedName %>Events = new EventEmitter(); | 11 | 10 |
| @@ -27,10 +26,12 @@ var events = { | 27 | 26 | <%_ } -%> | 28 | 27 |
| 29 | 28 | // Register the event emitter to the model events | 30 | | -for(var e in events) { | 31 | | - let event = events[e];<% if(filters.mongooseModels) { %> | 32 | | - <%= classedName %>.schema.post(e, emitEvent(event));<% } if(filters.sequelizeModels) { %> | 33 | | - <%= classedName %>.hook(e, emitEvent(event));<% } %> | | 29 | +function registerEvents(<%= classedName %>) { | | 30 | + for(var e in events) { | | 31 | + let event = events[e];<% if(filters.mongooseModels) { %> | | 32 | + <%= classedName %>.post(e, emitEvent(event));<% } if(filters.sequelizeModels) { %> | | 33 | + <%= classedName %>.hook(e, emitEvent(event));<% } %> | | 34 | + } | 34 | 35 | } | 35 | 36 |
| 36 | 37 | function emitEvent(event) { | @@ -40,5 +41,7 @@ function emitEvent(event) { | 40 | 41 | done(null);<% } %> | 41 | 42 | }; | 42 | 43 | } | 43 | | - | | 44 | +<% if (filters.sequelizeModels) { %> | | 45 | +registerEvents(<%= classedName %>);<% } if (filters.mongooseModels) { %> | | 46 | +export {registerEvents};<% } %> | 44 | 47 | export default <%= classedName %>Events; |
Collapse file Copy file name to clipboard +2Lines changed: 2 additions & 0 deletions | Original file line number | Diff line number | Diff line change |
|---|
| 1 | 1 | 'use strict'; | 2 | 2 |
| 3 | 3 | import mongoose from 'mongoose'; | | 4 | +import {registerEvents} from './<%= basename %>.events'; | 4 | 5 |
| 5 | 6 | var <%= classedName %>Schema = new mongoose.Schema({ | 6 | 7 | name: String, | 7 | 8 | info: String, | 8 | 9 | active: Boolean | 9 | 10 | }); | 10 | 11 |
| | 12 | +registerEvents(<%= classedName %>Schema); | 11 | 13 | export default mongoose.model('<%= classedName %>', <%= classedName %>Schema); |
|