thelounge/src/command-line/add.js

42 lines
942 B
JavaScript
Raw Normal View History

"use strict";
2014-09-13 23:29:45 +02:00
var ClientManager = new require("../clientManager");
var colors = require("colors/safe");
2014-09-13 23:29:45 +02:00
var program = require("commander");
2014-09-13 23:55:07 +02:00
var Helper = require("../helper");
2014-09-13 23:29:45 +02:00
program
.command("add <name>")
2014-09-13 23:29:45 +02:00
.description("Add a new user")
.action(function(name) {
2014-09-13 23:29:45 +02:00
var manager = new ClientManager();
var users = manager.getUsers();
if (users.indexOf(name) !== -1) {
log.error(`User ${colors.bold(name)} already exists.`);
2014-09-13 23:29:45 +02:00
return;
}
log.prompt({
text: "Enter password:",
silent: true
}, function(err, password) {
if (!password) {
log.error("Password cannot be empty.");
return;
}
if (!err) {
add(manager, name, password);
}
});
2014-09-13 23:29:45 +02:00
});
2014-09-15 23:31:25 +02:00
2014-09-16 19:33:15 +02:00
function add(manager, name, password) {
2016-10-21 21:00:43 +02:00
var hash = Helper.password.hash(password);
2014-10-14 22:53:26 +02:00
manager.addUser(
2014-09-16 19:33:15 +02:00
name,
hash
);
log.info(`User ${colors.bold(name)} created.`);
log.info(`User file located at ${colors.green(Helper.getUserConfigPath(name))}.`);
2014-09-16 19:33:15 +02:00
}