refactor: Authentication service.

This commit is contained in:
Ahmed Bouhuolia
2020-08-31 22:15:44 +02:00
parent ca251a2d28
commit abefba22ee
35 changed files with 880 additions and 395 deletions

View File

@@ -0,0 +1,41 @@
import { Container } from 'typedi';
import { pick } from 'lodash';
import { EventSubscriber, On } from 'event-dispatch';
import events from '@/subscribers/events';
@EventSubscriber()
export class AuthenticationSubscriber {
@On(events.auth.login)
public onLogin(payload) {
const { emailOrPhone, password } = payload;
}
@On(events.auth.register)
public onRegister(payload) {
const { registerDTO } = payload;
const agenda = Container.get('agenda');
// Send welcome mail to the user.
agenda.now('welcome-email', {
...pick(registerDTO, ['email', 'organizationName', 'firstName']),
});
}
@On(events.auth.resetPassword)
public onResetPassword(payload) {
}
@On(events.auth.sendResetPassword)
public onSendResetPassword (payload) {
const { user, token } = payload;
const agenda = Container.get('agenda');
// Send reset password mail.
agenda.now('reset-password-mail', { user, token })
}
}

View File

@@ -4,6 +4,7 @@ export default {
auth: {
login: 'onLogin',
register: 'onRegister',
sendResetPassword: 'onSendResetPassword',
resetPassword: 'onResetPassword',
},
}

View File