blob: 0b697416f11a3b2cd9f969947fa806f58eae126a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
const utils = require("../utils");
const threads = require("../data/threads");
module.exports = ({ bot, knex, config, commands }) => {
commands.addInboxServerCommand('newthread', '<userId:userId>', async (msg, args, thread) => {
const user = bot.users.get(args.userId);
if (! user) {
utils.postSystemMessageWithFallback(msg.channel, thread, 'User not found!');
return;
}
const existingThread = await threads.findOpenThreadByUserId(user.id);
if (existingThread) {
utils.postSystemMessageWithFallback(msg.channel, thread, `Cannot create a new thread; there is another open thread with this user: <#${existingThread.channel_id}>.`);
return;
}
const createdThread = await threads.createNewThreadForUser(user, true, true);
createdThread.postSystemMessage(`Thread was opened by ${msg.author.username}#${msg.author.discriminator}.`);
msg.channel.createMessage(`Thread opened: <#${createdThread.channel_id}>.`);
});
};
|