arnaucube
arnaucube/commonroutesServerPublic Self-hosted repository
commonroutesServer/adminCreator.js
adminCreator.jsRaw
 1//File: controllers/userController.js
 2var mongoose = require('mongoose');
 3
 4var config = require('./config');
 5//var adminConfig = require('./adminConfig'); // get our config file
 6
 7mongoose.Promise = global.Promise;
 8// Connection to DB
 9mongoose.connect(config.database, function(err, res) {
10    if (err) {
11        console.log(err);
12    };
13    console.log('Connected to Database');
14});
15
16var express = require("express");
17var app = express();
18var adminMdl = require('./models/adminModel')(app, mongoose);
19var adminModel = mongoose.model('adminModel');
20
21
22/* */
23/*var jwt = require('jsonwebtoken'); // used to create, sign, and verify tokens
24var express = require("express");
25var config = require('./config'); // get our config file
26app.set('superSecret', config.secret); // secret variable
27var request = require('request');*/
28
29var crypto = require('crypto');
30/* */
31
32
33
34var readlineSync = require('readline-sync');
35
36var admin = new adminModel({});
37
38console.log("Welcome to Common Routes");
39console.log("----------");
40console.log("This is the adminCreator.js");
41
42
43admin.username = readlineSync.question('Enter the admin name: ');
44if ((admin.username == "")) {
45    console.log("username can't be empty");
46    process.exit(0);
47}
48console.log('Hi ' + admin.username + '!');
49
50var clearPassword = readlineSync.question('Enter the admin password: ', {
51    hideEchoBack: true // The typed text on screen is hidden by `*` (default).
52});
53var clearPassword2 = readlineSync.question('Enter the admin password again: ', {
54    hideEchoBack: true // The typed text on screen is hidden by `*` (default).
55});
56if (clearPassword != clearPassword2) {
57    console.log("passwords don't match");
58    process.exit(0);
59}
60if (clearPassword=="undefined") {
61    console.log("Password can't be empty");
62    process.exit(0);
63}
64if (clearPassword.length < 10) {
65    console.log("Please, choose a password with more than 10 characters");
66    process.exit(0);
67}
68admin.password = crypto.createHash('sha256').update(clearPassword).digest('base64')
69
70admin.email = readlineSync.question('email: ');
71admin.phone = readlineSync.question('phone: ');
72admin.telegram = readlineSync.question('telegram: ');
73
74if (admin.email == undefined) {
75    console.log("username or email empty");
76    process.exit(0);
77}
78
79console.log(admin);
80
81admin.save(function(err, admin) {
82    if (err){
83        console.log(err.message);
84        process.exit(0);
85    }
86
87    console.log("admin created correctly");
88    process.exit(0);
89});