From 85e222c73d5797620255616bbe8f5680485e9e97 Mon Sep 17 00:00:00 2001 From: david Date: Wed, 14 Aug 2019 13:50:28 +0200 Subject: [PATCH] registro de usuario administrador para web admin --- modules/auth/auth.controller.js | 41 ++++++++++++++++++++++++++++++++- modules/auth/auth.routes.js | 6 +---- 2 files changed, 41 insertions(+), 6 deletions(-) diff --git a/modules/auth/auth.controller.js b/modules/auth/auth.controller.js index 40e6baa..57cf3fc 100644 --- a/modules/auth/auth.controller.js +++ b/modules/auth/auth.controller.js @@ -3,7 +3,7 @@ const _ = require('lodash'); const httpStatus = require('http-status'); const controllerHelper = require('../../helpers/controller.helper'); -const messageHelper = require('../../helpers/message.helper'); +const crypto = require('crypto'); const securityHelper = require('../../helpers/security.helper'); const authService = require('./auth.service'); @@ -180,6 +180,44 @@ async function rejectToken(req, res, next) { } } +// Registro por email y por password +async function singup(req, res, next) { + var newUser = undefined; + + try { + const data = { + email: req.body.email, + name: req.body.name, + surname: req.body.surname, + level: 8, + password: crypto.createHash('sha512').update(req.body.password).digest('hex') + }; + + newUser = await authService.extraMethods.createUser(data); + + } catch (error) { + console.error(error); + return controllerHelper.handleErrorResponse(MODULE_NAME, register.name, error, res); + } + + if (newUser) { + newUser = newUser.toJSON(); + + const tokenData = { + phone: undefined, + fbuid: undefined, + id: newUser.id, + email: newUser.email, + }; + const tokens = securityHelper.generateToken(tokenData); + + newUser.token = tokens.token; + } + + return controllerHelper.handleResultResponse(newUser, null, req.params, res, httpStatus.OK); + +} + module.exports = { login, @@ -188,5 +226,6 @@ module.exports = { register, regenerateToken, rejectToken, + singup, MODULE_NAME } \ No newline at end of file diff --git a/modules/auth/auth.routes.js b/modules/auth/auth.routes.js index 01ec8ba..f03a1bb 100644 --- a/modules/auth/auth.routes.js +++ b/modules/auth/auth.routes.js @@ -38,12 +38,8 @@ routes.get('/loginWithPhone', authController.loginWithPhone, ); +routes.post('/signup', authController.singup); -routes.get('/pepepe', AccessValidator.isLoggedUser, - function (req, res, next) { - res.send(req.user.email); - } -); routes.get('/test_jwt', AccessValidator.isLoggedUser, function (req, res) {