From 2275b5b8d128b86522ae9c09d7f0ba6d2d5c0dc9 Mon Sep 17 00:00:00 2001 From: david Date: Tue, 9 Jul 2019 15:59:58 +0200 Subject: [PATCH] register bien --- core/passport.js | 52 ++++++++++++--------------------- modules/auth/auth.controller.js | 27 ++++++++--------- 2 files changed, 30 insertions(+), 49 deletions(-) diff --git a/core/passport.js b/core/passport.js index 691e4a0..5d8cc7f 100644 --- a/core/passport.js +++ b/core/passport.js @@ -5,15 +5,14 @@ const { Strategy: CustomStrategy } = require('passport-custom'); const models = require('./models'); const securityHelper = require('../helpers/security.helper'); -const authService = require('../modules/auth/auth.service'); /** * Validación sobre firebase */ -var admin = require('firebase-admin'); +var firebase_admin = require('firebase-admin'); var serviceAccount = require('../firebase-key.json'); -admin.initializeApp({ - credential: admin.credential.cert(serviceAccount), +firebase_admin.initializeApp({ + credential: firebase_admin.credential.cert(serviceAccount), databaseURL: "https://app-lqdvi-v2.firebaseio.com" }); @@ -69,36 +68,21 @@ const localPhoneOptions = { passport.use('local-phone', new LocalStrategy(localPhoneOptions, async (phone, fbuid, done) => { try { -console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><'); - //Comprobamos si el usuario ya existe en nuestro sistema - const user = await authService.extraMethods.findUser({ phone, fbuid }); - - if (_.isNull(user)) { - admin.auth().getUserByPhoneNumber(phone) - .then(function(userRecord) { - console.log(userRecord.toJSON()); - if (userRecord && userRecord.toJSON().uid == fbuid) { - if (userRecord.toJSON().disabled) { - console.log('aaaaa'); - return done(null, false, { message: 'User disabled in fb' }); - } - else { - console.log('bbbbbb'); - return done(null, true, { message: 'Register user' }); - } - } - else { - return done(null, false, { message: 'User not validate in fb' }) - } - }) - .catch(function (error) { - //Servicio firebase caido o no funciona pero devuelvo el usuario - return done(null, user, error); - }) - } else { - //Usuario encontrado y validado - return done(null, user.toJSON(), { message: 'User found' }); - } + firebase_admin.auth().getUserByPhoneNumber(phone) + .then(function(userRecord) { + if (userRecord && userRecord.toJSON().uid == fbuid) { + if (userRecord.toJSON().disabled) + return done(null, false, { message: 'User disabled in fb' }) + else + return done(null, true, { message: 'Register user' }); + } + else + return done(null, false, { message: 'User not validate in fb' }); + }) + .catch(function (error) { + //Servicio firebase caido o no funciona pero devuelvo el usuario + return done(null, user, error); + }) } catch (error) { return done(null, false, error); } diff --git a/modules/auth/auth.controller.js b/modules/auth/auth.controller.js index b2b0c08..e52a831 100644 --- a/modules/auth/auth.controller.js +++ b/modules/auth/auth.controller.js @@ -51,12 +51,13 @@ async function register(req, res, next) { const values = { phone: req.body.phone, - platform: req.body.fbuid + fbuid: req.body.fbuid }; const tokens = securityHelper.generateToken(values); - let newUser = req.user; - if (!req.user) { + //Comprobamos si el usuario ya existe en nuestro sistema + let newUser = await authService.extraMethods.findUser(values); + if (!newUser) { try { const data = { refresh_token: tokens.refreshToken, @@ -68,24 +69,20 @@ async function register(req, res, next) { entityid: req.body.entityid, accessibility: req.body.accesssibility }; - console.log(data); newUser = await authService.extraMethods.createUser(data); - newUser = cleanAdminData(newUser.toJSON()); - newUser.token = tokens.token; - console.log(newUser); - return controllerHelper.handleResultResponse(newUser, null, req.params, res, httpStatus.OK); + } catch (error) { console.log(error); controllerHelper.handleErrorResponse(MODULE_NAME, register.name, error, res); } - } - else { - newUser = cleanAdminData(newUser.toJSON()); - newUser.token = tokens.token; - console.log(newUser); - return controllerHelper.handleResultResponse(req.user, null, req.params, res, httpStatus.OK); - } + }; + + newUser = cleanAdminData(newUser.toJSON()); + newUser.token = tokens.token; + console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>'); + console.log(newUser); + return controllerHelper.handleResultResponse(req.user, null, req.params, res, httpStatus.OK); } async function regenerateToken(req, res, next) {