const {MessageEmbed} = require('discord.js') const db = require('quick.db') module.exports = { name: 'report', category: 'Fun', description: 'report', callback: async({message,args}) => { const target = message.mentions.members.first() const {guild, channel} = message const role = message.guild.roles.cache.find(role => role.name === 'mute') const voicechannel = message.member.voice.channel const reason = args.slice(1).join(' ') let setping = db.get(`setreport_${channel.id}`) if(setping === true){ if(!voicechannel) { message.channel.send(new MessageEmbed() .setColor('#ff2400') .setAuthor('🧙 ОШИБКА') .setThumbnail('https://i.imgur.com/IG8G9ZR.png') .setDescription(`Вы не находитесь в голосовом канале.`)).then((message) => {message.delete({timeout: 2000})}) message.delete() } else if(!target) { message.channel.send(new MessageEmbed() .setColor('#ff2400') .setAuthor('🧙 ОШИБКА') .setThumbnail('https://i.imgur.com/IG8G9ZR.png') .setDescription(`Пожалуйста укажите пользователя на которого хотите пожаловаться.`)).then((message) => {message.delete({timeout: 2000})}) message.delete() } else if (!target.voice.channel) { message.channel.send(new MessageEmbed() .setColor('#ff2400') .setAuthor('🧙 ОШИБКА') .setThumbnail('https://i.imgur.com/IG8G9ZR.png') .setDescription(`Указанный пользователь не находится в голосовом канале.`)).then((message) => {message.delete({timeout: 3000})}) message.delete() } else if(target.id === message.author.id) { message.channel.send(new MessageEmbed() .setColor('#ff2400') .setAuthor('🧙 ОШИБКА') .setThumbnail('https://i.imgur.com/IG8G9ZR.png') .setDescription(`Вы не можете пожаловаться на самого себя.`)).then((message) => {message.delete({timeout: 3000})}) message.delete() } else if(target.voice.channel !== message.member.voice.channel) { message.channel.send(new MessageEmbed() .setColor('#ff2400') .setAuthor('🧙 ОШИБКА') .setThumbnail('https://i.imgur.com/IG8G9ZR.png') .setDescription(`Пользователь не находится с вами в одном канале.`)).then((message) => {message.delete({timeout: 3000})}) message.delete() } else if(!reason) { message.channel.send(new MessageEmbed() .setColor('#ff2400') .setAuthor('🧙 ОШИБКА') .setThumbnail('https://i.imgur.com/IG8G9ZR.png') .setDescription(`Вы не указали причину своей жалобы.`)).then((message) => {message.delete({timeout: 3000})}) message.delete() } else { const sentMessage = await message.channel.send(new MessageEmbed() .setTitle(`📧 | Жалоба на ${target.user.username}`) .setColor('YELLOW') .addFields( {name: 'Автор', value: `${message.author}`, inline: true}, {name: 'Причина', value: `${reason}`, inline: true}, ) .setDescription(` \`[✅] - Принять\` \`[❌] - Отклонить\` `) ) sentMessage.react('✅') sentMessage.react('❌') const checkno = ['✅','❌'] const film = (reaction, user) => (checkno.includes(reaction.emoji.name)) && user.id ===user.id && !user.bot const a = sentMessage.createReactionCollector(film, {max : 1}); a.on('collect', (reaction, user) => { switch(reaction.emoji.name) { case checkno[0] : target.voice.kick() target.roles.add(role) sentMessage.edit(new MessageEmbed() .setTitle(`📧 | Жалоба на ${target.user.username}`) .setColor('GREEN') .addFields( {name: 'Автор', value: `${message.author}`, inline: true}, {name: 'Причина', value: `${reason}`, inline: true}, ) .setDescription(` \`Пользователь был кикнут и ему выдана mute-роль\` `)) sentMessage.reactions.removeAll() break; } switch(reaction.emoji.name) { case checkno[1] : sentMessage.edit(new MessageEmbed() .setTitle(`📧 | Жалоба на ${target.user.username}`) .setColor('RED') .addFields( {name: 'Автор', value: `${message.author}`, inline: true}, {name: 'Причина', value: `${reason}`, inline: true}, ) .setDescription(` \`Не набралось нужное количество реакций, или еще что-то\` `)) sentMessage.reactions.removeAll() break; } sentMessage.reactions.removeAll() a.on('end', () => console.log('.')) }) } } else { return } } }