Files
2024-10-21 10:22:26 +03:30

40 lines
1.2 KiB
JavaScript

const User = require('../models/User')
const _privateAdminInfo = require('./privateAdminData')
const bcrypt = require('bcryptjs')
const database = require('../database')
module.exports.createAdmins = () => {
database.once('open', async cb => {
for (const item of _privateAdminInfo) {
try {
const user = await User.findOne({username: item.username})
if (!user) {
const data = {
firstName: item.firstName,
lastName: item.lastName,
username: item.username,
email : item.email,
mobileNumber : item.mobileNumber,
scope: ['admin'],
private: true,
registration_done: true,
permissions: ['superAdmin'],
portals: item.portals
}
// hash password
const salt = await bcrypt.genSalt(10)
const hash = await bcrypt.hash(item.password, salt)
data.password = hash
const newUser = new User(data)
newUser.save(err => {
if (err) console.log(err)
})
}
} catch
(e) {
console.log('Private admin creation has error -- ', e)
}
}
})
}