ohmyform/scripts/create_admin.js
wodka 1caf34c230 Merge remote-tracking branch 'origin/fixUXBugs' into features/missing
# Conflicts:
#	.gitignore
#	app/views/form.server.view.pug
#	package-lock.json
#	package.json
#	public/form_modules/forms/base/config/i18n/french.js
#	public/modules/core/config/core.client.routes.js
#	public/modules/core/config/i18n/french.js
#	public/modules/core/controllers/header.client.controller.js
#	public/modules/forms/admin/css/admin-form.css
#	public/modules/users/controllers/authentication.client.controller.js
#	public/modules/users/services/auth.client.service.js
#	scripts/create_admin.js
#	server.js
2019-07-11 23:32:25 +02:00

48 lines
1.0 KiB
JavaScript

var config = require('../config/config'),
mongoose = require('mongoose'),
chalk = require('chalk');
exports.run = function(app, db, cb) {
console.log(chalk.green('Creating the Admin Account'));
var User = mongoose.model('User');
var email = config.admin.email || 'admin@admin.com';
var newUserObj = {
firstName: 'Admin',
lastName: 'Account',
email: email,
username: config.admin.username || 'root',
password: config.admin.password || 'root',
provider: 'local',
roles: ['admin', 'user']
});
var options = {
upsert: true,
new: true,
setDefaultsOnInsert: true
}
User.findOneAndUpdate({username: username}, newUserObj, options, function (err, currUser1) {
if (err) {
return cb(err);
}
if(!currUser1){
return cb(new Error('Couldn\'t create admin account'))
} else {
currUser1.password = config.admin.password;
currUser1.save(function(err, currUser2){
if (err) {
return cb(err);
}
console.log(chalk.green('Successfully created/updated Admin Account'));
return cb();
});
}
});
}