aboutsummaryrefslogtreecommitdiff
path: root/commands/timeout.js
blob: bed9077d4b7961fa3263b27fd126ac0b920945ea (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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
/** **************************************
 *
 *   Jail: Command for AleeBot
 *   Copyright (C) 2017-2021 Alee Productions
 *
 *   This program is free software: you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation, either version 3 of the License, or
 *   (at your option) any later version.
 *
 *   This program is distributed in the hope that it will be useful,
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *   GNU General Public License for more details.
 *
 *   You should have received a copy of the GNU General Public License
 *   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 *
 * *************************************/
module.exports.run = async (client, message, args) => {
	const { MessageEmbed } = require('discord.js');

	if (!message.member.permissions.has('BAN_MEMBERS')) return message.reply('It looks like that you don\'t have the permissions to jail members.');
	if (!message.guild.members.cache.get(client.user.id).permissions.has('MANAGE_ROLES')) return message.reply('Uhh... I don\'t have permission to jail members.');

	if (!args[1]) message.reply('Determine the length of the timeout...');
	if (!args[2]) message.reply('Determine the reason of the timeout...');

	const member = message.mentions.members.first();
	if (!member) return await message.reply('Uhh... Please mention a member first.');

	const timeoutEmbed = new MessageEmbed()
	.setDescription(`${member.user.tag} just got timed out!`)
	.addField('Length', `${args[1]} minute(s)`)
	.addField('Reason', args[2])
	.setColor('#ec2727')
	member.timeout(args[1] * 60 * 1000, args[2]).then(message.reply({embeds: [timeoutEmbed]}));
};

exports.conf = {
	aliases: [],
	guildOnly: false,
};
exports.help = {
	name: 'timeout',
	description: 'Times out a member',
	usage: 'timeout [user]',
	category: '- Moderation Commands',
};