55 lines
1.5 KiB
JavaScript
55 lines
1.5 KiB
JavaScript
const symbols = require('log-symbols');
|
|
const generator = require('generate-password');
|
|
const admin = require('../server/models/tablas/Admin');
|
|
const bcrypt = require('bcrypt');
|
|
const colors = require('colors');
|
|
|
|
const send = require('gmail-send')({
|
|
user: process.env.EMAIL,
|
|
pass: process.env.EMAILPASS,
|
|
subject: 'Credenciales para ingreso a sistema de censo.'
|
|
});
|
|
|
|
const emails = [
|
|
'alfredo.lima@acatlan.unam.mx',
|
|
'312047278@pcpuma.acatlan.unam.mx',
|
|
'enrique.mg.cd@gmail.com'
|
|
];
|
|
|
|
const nombres = [
|
|
'Alfredo Lima',
|
|
'José Alfredo',
|
|
'Enrique Maquinola'
|
|
]
|
|
|
|
emails.forEach(async(email, index) => {
|
|
|
|
let tempPass = generator.generate({
|
|
length: 8,
|
|
numbers: true,
|
|
symbols: true,
|
|
exclude: `"`,
|
|
strict: true
|
|
});
|
|
|
|
console.log(symbols.info, `Creating user ${email}...`.blue.bold);
|
|
let tempUser = await admin.create({
|
|
name: email,
|
|
userName: nombres[index],
|
|
password: bcrypt.hashSync(tempPass, 10),
|
|
isAdmin: false
|
|
});
|
|
if (!tempUser)
|
|
return console.log(symbols.error, 'Error creating user.'.red.bold);
|
|
console.log(symbols.info, `Sending email to ${email}`.blue);
|
|
await send({
|
|
to: email,
|
|
text: `Usuario: ${email}\nContraseña: ${tempPass}\nSaludos.`
|
|
},
|
|
async(err, res, resFull) => {
|
|
if (err)
|
|
return console.log(symbols.error, err);
|
|
console.log(symbols.success, 'User created. Email sent.'.green.bold);
|
|
});
|
|
|
|
}) |