aloux-iam 0.0.51 → 0.0.52

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,7 +6,7 @@ const self = module.exports
6
6
  self.email = async (req, res) => {
7
7
  try {
8
8
  const response = await Auth.searchEmail(req.body.email, req.body.code)
9
- res.status(200).send(response)
9
+ res.status(response.statusCode).send({email: response.email, _id: response._id})
10
10
  } catch (error) {
11
11
  await utils.responseError(res,error)
12
12
  }
@@ -0,0 +1,11 @@
1
+ const mongoose = require("mongoose")
2
+
3
+ const userProvisional = mongoose.Schema({
4
+ email: { type: String, required: true, trim: true, unique: true, lowercase: true },
5
+ code: { type: Number, required: true },
6
+ createdAt: { type: Number },
7
+ lastUpdate: { type: Number }
8
+ })
9
+
10
+ const UserProvisional = mongoose.model("UserProvisional", userProvisional)
11
+ module.exports = UserProvisional
@@ -1,5 +1,6 @@
1
1
  const Function = require('../models/Functions')
2
2
  const User = require('../models/User')
3
+ const UserProvisional = require('../models/UserProvisional')
3
4
  const s3 = require('../services/s3')
4
5
  const ses = require('../services/ses')
5
6
  const sns = require('../services/sns')
@@ -13,27 +14,40 @@ const mongoose = require("mongoose")
13
14
  const self = module.exports
14
15
 
15
16
  self.searchEmail = async (email, banCode) => {
16
- const response = {}
17
- const userLogin = await User.findOne({ email: email })
18
- if (userLogin) {
19
- response.name = userLogin.name
20
- response.email = true
21
- const code = await self.generatecode()
22
- await self.sendcodemailLogin(userLogin.email, code, false)
23
- userLogin.validateKey.resetPassword.resetCode = code
24
- let time = new Date()
25
- const sumarMinutos = new Date(time.getTime() + 5 * 60000)
26
- userLogin.validateKey.limitCodeTime = (new Date(sumarMinutos)).getTime()
27
-
28
- await userLogin.save()
29
- return response
30
- } else if(banCode.toString() === 'true'){
31
- const code = await self.generatecode()
32
- await self.sendcodemailLogin(email, code, true)
33
-
34
- } else {
35
- throw { code: 404, title: 'Correo no encontrado', detail: '', suggestion: 'Verifica que el correo sea correcto', error: new Error() }
36
- }
17
+ let response = {}
18
+ let code
19
+ const userLogin = await User.findOne({ email: email })
20
+ if (userLogin) {
21
+ response.name = userLogin.name
22
+ response.email = true
23
+ code = await self.generatecode()
24
+ await self.sendcodemailLogin(userLogin.email, code, false)
25
+ userLogin.validateKey.resetPassword.resetCode = code
26
+ let time = new Date()
27
+ const sumarMinutos = new Date(time.getTime() + 5 * 60000)
28
+ userLogin.validateKey.limitCodeTime = (new Date(sumarMinutos)).getTime()
29
+
30
+ await userLogin.save()
31
+ response.statusCode = 200
32
+ return response
33
+ } else if(banCode.toString() === 'true'){
34
+ code = await self.generatecode()
35
+ await self.sendcodemailLogin(email, code, true)
36
+ const userFind = await UserProvisional.findOne({email: email},{code: 0}).lean()
37
+ if(userFind){
38
+ await UserProvisional.updateOne({email: email},{code: code})
39
+ response = userFind
40
+ response.statusCode = 201
41
+ return response
42
+ }else{
43
+ const userProvisional = new UserProvisional({email: email, code: code, createdAt: (new Date()).getTime()})
44
+ response = await userProvisional.save()
45
+ response.statusCode = 201
46
+ return response
47
+ }
48
+ } else {
49
+ throw { code: 404, title: 'Correo no encontrado', detail: '', suggestion: 'Verifica que el correo sea correcto', error: new Error() }
50
+ }
37
51
  }
38
52
 
39
53
  self.login = async (body, res) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aloux-iam",
3
- "version": "0.0.51",
3
+ "version": "0.0.52",
4
4
  "description": "Aloux IAM for APIs ",
5
5
  "main": "index.js",
6
6
  "scripts": {