register bien
This commit is contained in:
parent
af881ddf27
commit
2275b5b8d1
@ -5,15 +5,14 @@ const { Strategy: CustomStrategy } = require('passport-custom');
|
|||||||
|
|
||||||
const models = require('./models');
|
const models = require('./models');
|
||||||
const securityHelper = require('../helpers/security.helper');
|
const securityHelper = require('../helpers/security.helper');
|
||||||
const authService = require('../modules/auth/auth.service');
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Validación sobre firebase
|
* Validación sobre firebase
|
||||||
*/
|
*/
|
||||||
var admin = require('firebase-admin');
|
var firebase_admin = require('firebase-admin');
|
||||||
var serviceAccount = require('../firebase-key.json');
|
var serviceAccount = require('../firebase-key.json');
|
||||||
admin.initializeApp({
|
firebase_admin.initializeApp({
|
||||||
credential: admin.credential.cert(serviceAccount),
|
credential: firebase_admin.credential.cert(serviceAccount),
|
||||||
databaseURL: "https://app-lqdvi-v2.firebaseio.com"
|
databaseURL: "https://app-lqdvi-v2.firebaseio.com"
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -69,36 +68,21 @@ const localPhoneOptions = {
|
|||||||
|
|
||||||
passport.use('local-phone', new LocalStrategy(localPhoneOptions, async (phone, fbuid, done) => {
|
passport.use('local-phone', new LocalStrategy(localPhoneOptions, async (phone, fbuid, done) => {
|
||||||
try {
|
try {
|
||||||
console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><');
|
firebase_admin.auth().getUserByPhoneNumber(phone)
|
||||||
//Comprobamos si el usuario ya existe en nuestro sistema
|
.then(function(userRecord) {
|
||||||
const user = await authService.extraMethods.findUser({ phone, fbuid });
|
if (userRecord && userRecord.toJSON().uid == fbuid) {
|
||||||
|
if (userRecord.toJSON().disabled)
|
||||||
if (_.isNull(user)) {
|
return done(null, false, { message: 'User disabled in fb' })
|
||||||
admin.auth().getUserByPhoneNumber(phone)
|
else
|
||||||
.then(function(userRecord) {
|
return done(null, true, { message: 'Register user' });
|
||||||
console.log(userRecord.toJSON());
|
}
|
||||||
if (userRecord && userRecord.toJSON().uid == fbuid) {
|
else
|
||||||
if (userRecord.toJSON().disabled) {
|
return done(null, false, { message: 'User not validate in fb' });
|
||||||
console.log('aaaaa');
|
})
|
||||||
return done(null, false, { message: 'User disabled in fb' });
|
.catch(function (error) {
|
||||||
}
|
//Servicio firebase caido o no funciona pero devuelvo el usuario
|
||||||
else {
|
return done(null, user, error);
|
||||||
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' });
|
|
||||||
}
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
return done(null, false, error);
|
return done(null, false, error);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -51,12 +51,13 @@ async function register(req, res, next) {
|
|||||||
|
|
||||||
const values = {
|
const values = {
|
||||||
phone: req.body.phone,
|
phone: req.body.phone,
|
||||||
platform: req.body.fbuid
|
fbuid: req.body.fbuid
|
||||||
};
|
};
|
||||||
const tokens = securityHelper.generateToken(values);
|
const tokens = securityHelper.generateToken(values);
|
||||||
|
|
||||||
let newUser = req.user;
|
//Comprobamos si el usuario ya existe en nuestro sistema
|
||||||
if (!req.user) {
|
let newUser = await authService.extraMethods.findUser(values);
|
||||||
|
if (!newUser) {
|
||||||
try {
|
try {
|
||||||
const data = {
|
const data = {
|
||||||
refresh_token: tokens.refreshToken,
|
refresh_token: tokens.refreshToken,
|
||||||
@ -68,24 +69,20 @@ async function register(req, res, next) {
|
|||||||
entityid: req.body.entityid,
|
entityid: req.body.entityid,
|
||||||
accessibility: req.body.accesssibility
|
accessibility: req.body.accesssibility
|
||||||
};
|
};
|
||||||
console.log(data);
|
|
||||||
|
|
||||||
newUser = await authService.extraMethods.createUser(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) {
|
} catch (error) {
|
||||||
console.log(error);
|
console.log(error);
|
||||||
controllerHelper.handleErrorResponse(MODULE_NAME, register.name, error, res);
|
controllerHelper.handleErrorResponse(MODULE_NAME, register.name, error, res);
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
else {
|
|
||||||
newUser = cleanAdminData(newUser.toJSON());
|
newUser = cleanAdminData(newUser.toJSON());
|
||||||
newUser.token = tokens.token;
|
newUser.token = tokens.token;
|
||||||
console.log(newUser);
|
console.log('>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>');
|
||||||
return controllerHelper.handleResultResponse(req.user, null, req.params, res, httpStatus.OK);
|
console.log(newUser);
|
||||||
}
|
return controllerHelper.handleResultResponse(req.user, null, req.params, res, httpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
async function regenerateToken(req, res, next) {
|
async function regenerateToken(req, res, next) {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user