Advertisement
Guest User

Untitled

a guest
Nov 12th, 2019
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.60 KB | None | 0 0
  1. const Discord = require("discord.js");
  2. const bot = new Discord.Client();
  3. const sql = require("sqlite");
  4. sql.open("./assets/guildsettings.sqlite");
  5. let chrono = require("chrono-node");
  6. var moment = require('moment');
  7. const superagent = require("superagent");
  8. exports.run = async (client, message, args) => {
  9. message.delete()
  10. sql.get(`SELECT * FROM scores WHERE guildId ="${message.guild.id}"`).then(row => {
  11. sql.run(`UPDATE scores SET casenumber = ${row.casenumber + 1} WHERE guildId = ${message.guild.id}`);
  12. const prefixtouse = row.prefix
  13. const usage = new Discord.RichEmbed()
  14. .setColor(0x00A2E8)
  15. .setThumbnail(client.user.avatarURL)
  16. .setTitle("Command: " + prefixtouse + "mute")
  17. .addField("Usage", prefixtouse + "mute @Someone <minutes> <reason>")
  18. .addField("Example", prefixtouse + "mute @Someone 5 spamming in general.")
  19. .setDescription("Description: " + "Gives a user the muted role for x minutes");
  20.  
  21. if (message.member.hasPermission("MANAGE")) {
  22. if (!message.guild.member(client.user).hasPermission('MANAGE_ROLES')) return message.reply('Sorry, i dont have the perms to do this cmd i need MANAGE_ROLES. :x:')
  23. if (message.mentions.users.size < 1) return message.channel.send(usage)
  24. let user = message.guild.member(message.mentions.users.first());
  25. if (user.highestRole.position >= message.member.highestRole.position) return message.reply('I cant mute that member. They are the same level as you or higher. :x:');
  26. let messagez = parseInt(args[1])
  27. if (isNaN(messagez)) return message.channel.send("That is not a valid time")
  28. if (messagez > 1440) return message.channel.send('Maximum time is 1 day (1440 minutes)');
  29. if (messagez < 1) return message.channel.send('Time must be at least 1 minute.');
  30. let reason = args.slice(2).join(' ') || `Moderator didn't give a reason.`;
  31. let modlog = message.guild.channels.find(channel => channel.name == row.logschannel);
  32. if (reason.length < 1) return;
  33. let muteRole = client.guilds.get(message.guild.id).roles.find(r => r.name == 'Muted') || client.guilds.get(message.guild.id).roles.find('name', 'muted');
  34. if (!muteRole) return message.channel.send(" I can not find a Muted role :x:");
  35.  
  36. const embed = new Discord.RichEmbed()
  37. .setColor(0x00A2E8)
  38. .setTitle("Case #" + row.casenumber + " | Action: Mute")
  39. .addField("Moderator", message.author.tag + " (ID: " + message.author.id + ")")
  40. .addField("User", user.user.tag + " (ID: " + user.user.id + ")")
  41. .addField("Time", messagez, true)
  42. .addField("Reason", reason, true)
  43. .setFooter("Time used: " + message.createdAt.toDateString())
  44.  
  45. message.guild.member(user).addRole(muteRole).then(() => {
  46. message.channel.send("***The user has been successfully muted for " + messagez + " minute(s) :white_check_mark:***")
  47.  
  48. if (!modlog) {
  49. setTimeout(() => {
  50. message.guild.member(user).removeRole(muteRole)
  51. message.channel.send(user.user.username + ' has now been unmuted after ' + messagez +' minute(s)')
  52. }, messagez * 60000);
  53. } else if (row.logsenabled === "disabled") {
  54. setTimeout(() => {
  55. message.guild.member(user).removeRole(muteRole)
  56. message.channel.send(user.user.username + ' has now been unmuted after ' + messagez +' minute(s)')
  57. }, messagez * 60000);
  58. } else {
  59. client.channels.get(modlog.id).send({embed})
  60. setTimeout(() => {
  61. message.guild.member(user).removeRole(muteRole)
  62. message.channel.send(user.user.username + ' has now been unmuted after ' + messagez +' minute(s)')
  63. }, messagez * 60000);
  64. }
  65. })
  66. }
  67. })
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement