Advertisement
gaber-elsayed

Bot-Suggestion

Sep 30th, 2021
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.67 KB | None | 0 0
  1. /*
  2. * Code By: Ali#0007
  3. * Please Follow Me On Github
  4. */
  5. const Discord = require('discord.js');
  6. const client = new Discord.Client()
  7. const config = require('./config.json')///config file
  8. client.login(config.Token)///bot login
  9. const db = require('quick.db');////do 'npm install quick.db'
  10. let prefix = config.prefix
  11.  
  12.  
  13.  
  14. client.on('ready', () =>{
  15. console.log(`Logged in as ${client.user.tag}`)
  16. console.log(`Bot developer: Ali#0007`)
  17. client.user.setActivity(`${prefix}help`)
  18. });
  19.  
  20.  
  21.  
  22.  
  23. client.on('message', async message => {
  24. if (message.content.startsWith(prefix + 'sugs on')) {
  25. if (!message.member.hasPermission('ADMINISTRATOR')) return message.channel.send("You dont have the required permission `ADMINISTRATOR` ");
  26.  
  27. await db.set(`Sugs_${message.guild.id}`, "on")
  28. message.channel.send(`Suggestion turned on! `)
  29. } else {
  30. if (message.content.startsWith(prefix + 'sugs off')) {
  31. if (!message.member.hasPermission('ADMINISTRATOR')) return message.channel.send("You dont have the required permission `ADMINISTRATOR` ");
  32.  
  33. await db.set(`Sugs_${message.guild.id}`, "off")
  34. message.channel.send(`Suggestion turned off! `)
  35.  
  36. } else {
  37. if (message.content.startsWith(prefix + 'sug-status')) {
  38. if (!message.member.hasPermission('ADMINISTRATOR')) return message.channel.send("You dont have the required permission `ADMINISTRATOR` ");
  39. let ChannelFetch = await db.fetch(`Channel_${message.guild.id}`)
  40. let sugsStatus = await db.fetch(`Sugs_${message.guild.id}`)
  41. await message.channel.send(`Sugs is: **${sugsStatus}**\nThe Room is: <#${ChannelFetch}>`)
  42.  
  43. } else {
  44. if (message.content.startsWith(prefix + 'set-room')) {
  45. let Suggestion = await db.fetch(`Sugs_${message.guild.id}`)
  46. if (Suggestion == "off" || Suggestion == null) return message.channel.send(`Please activate the sugs first ${prefix}sugs on`)
  47. if (!message.member.hasPermission('ADMINISTRATOR')) return message.channel.send("You dont have the required permission `ADMINISTRATOR` ");
  48. let ChannelID = message.content.split(" ").slice(1).join(" ");
  49. if (!ChannelID) return message.channel.send(`Please specify an id for room`)
  50.  
  51. await db.set(`Channel_${message.guild.id}`, ChannelID)
  52. message.channel.send(`Done set the room <#${ChannelID}>`)
  53. } else {
  54. if (message.content === prefix + 'help') {
  55. const embed = new Discord.MessageEmbed()
  56. .setTitle(`Help`)
  57. .setDescription(`
  58. 1) ${prefix}sugs on / ${prefix}sugs off | turn on and off the suggestions.
  59. 2) ${prefix}set-room | set the suggestion room.
  60. 3) ${prefix}sug-status | show the suggestion status.
  61. `)
  62. .setFooter(`Request By: ${message.author.tag}`, message.author.avatarURL())
  63. message.channel.send(embed)
  64. } else {
  65. {
  66. let suggestion = await db.fetch(`Sugs_${message.guild.id}`)
  67. if (suggestion == "off") {
  68. return;
  69. } else if (suggestion == "on") {
  70. if (!message.guild.id) return;
  71. if (message.author.bot) return;
  72. let sug = message.content;
  73. let ChannelSug = await db.fetch(`Channel_${message.guild.id}`)
  74.  
  75. if (message.channel.id !== ChannelSug) return;
  76.  
  77. const SugEmbed = new Discord.MessageEmbed()
  78. .setAuthor(message.author.tag, message.author.avatarURL())
  79. .setTitle(`Sug is:`)
  80. .setDescription(`${sug}`)
  81. .setFooter(message.guild.name, message.guild.iconURL())
  82. await message.delete()
  83. message.channel.send(SugEmbed).then(async message => {
  84. await message.react('✅')
  85. await message.react('❌')
  86. })
  87. }
  88.  
  89.  
  90. }
  91. }
  92.  
  93. }
  94. }
  95. }
  96. }
  97. })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement