- const Discord = require("discord.js");
- const ms = require("ms");
- const db = require("quick.db");
- exports.run = async(client, msg, args) => {
- let prefix = await db.fetch(`prefix_${msg.guild.id}`) || client.conf.prefix;
- let user = msg.guild.member(msg.mentions.users.first() || msg.guild.members.cache.get(args[0]));
- let log = await db.fetch(`log_${msg.guild.id}`)
- let cezalırol = await db.fetch(`cezalıR_${msg.guild.id}`)
- const logyok = new Discord.MessageEmbed()
- .setAuthor("botunun adı", client.user.avatarURL())
- .setColor("RANDOM")
- .setDescription(`Lütfen bir log kanalı belirleyin!\n${prefix}log #kanal`)
- if (!log) return msg.channel.send(logyok)
- var mod = msg.author
- let sebep = args.slice(1).join(' ')
- const useryok = new Discord.MessageEmbed()
- .setAuthor("botunun adı", client.user.avatarURL())
- .setColor("RANDOM")
- .setDescription(`<a:unlem:730484050288181329> Kullanıcıyı etiketlemedin!`)
- .setFooter(`Doğru kullanım: ${prefix}susturma @üye <sebep>`)
- if (!user) return msg.channel.send(useryok)
- let cezalırola = msg.guild.roles.cache.find(r => r.id === cezalırol);
- let mute;
- if(cezalırola) mute = cezalırola
- let mutelimi = db.fetch(`mutelimi.${msg.guild.id}.${user.id}`)
- const zatenmutelidegil = new Discord.MessageEmbed()
- .setAuthor("botunun adı", client.user.avatarURL())
- .setColor("RANDOM")
- .setDescription(`Bu kullanıcı zaten susturulmamış!`)
- if(!mutelimi) return msg.channel.send(zatenmutelidegil)
- const kendinietiketleme = new Discord.MessageEmbed()
- .setAuthor("botunun adı", client.user.avatarURL())
- .setColor("RANDOM")
- .setDescription(`<a:unlem:730484050288181329> Kendini susturamazsın!`)
- .setFooter(`Doğru kullanım: ${prefix}susturma @üye <sebep>`)
- if(msg.author.id === user.id) return msg.channel.send(kendinietiketleme)
- const kendinednyüksek = new Discord.MessageEmbed()
- .setAuthor("botunun adı", client.user.avatarURL())
- .setColor("RANDOM")
- .setDescription(`<a:unlem:730484050288181329> Kendinden yüksek veya eşit rütbeli birisinin susturmasını kaldıramazsın!`)
- .setFooter(`Doğru kullanım: ${prefix}susturma @üye <sebep>`)
- if(user.roles.highest.position >= msg.member.roles.highest.position) return msg.channel.send(kendinednyüksek)
- db.delete(`muteli_${msg.guild.id + user.id}`)
- db.delete(`mutelimi.${msg.guild.id}.${user.id}`)
- const muteembed = new Discord.MessageEmbed()
- .setColor("RANDOM")
- .setThumbnail(user.avatarURL||user.defaultAvatarURL)
- .setTimestamp()
- .addField('Eylem:', 'Susturma Kaldırma')
- .addField('Üye:', `<@${user.id}>`,true)
- .addField('Yetkili:', `${mod}`,true)
- .addField('Sebep:', sebep ? sebep : 'Sebep belirtilmemiş.',true)
- .setThumbnail(user.avatarURL)
- msg.guild.channels.cache.get(log).send(muteembed)
- msg.channel.send(`**${user}** adlı kullanıcının susturulmasını kaldırdım!`)
- let usergonderilecek = new Discord.MessageEmbed()
- .setColor("RANDOM")
- .setThumbnail(user.avatarURL||user.defaultAvatarURL)
- .setTimestamp()
- .setDescription(`${msg.guild.name} adlı sunucuda ${sebep ? sebep : 'Sebep belirtilmemiş.'} sebebi ile susturulman kaldırıldı!`)
- .setFooter(`${msg.author.tag} tarafından susturulman kaldırıldı!`, client.user.avatarURL)
- user.send(usergonderilecek).catch(error => {
- })
- let x = [];
- msg.guild.roles.cache.forEach(async r => {
- const i = await db.fetch(`${msg.guild.id}.sustur.${user.id}.roles.${r.id}`)
- if(i){
- x.push(i)
- user.roles.set(x)
- db.delete(`${msg.guild.id}.sustur.${user.id}.roles.${r.id}`)
- db.delete(`mutelimi.${msg.guild.id}.${user.id}`)
- user.roles.remove(mute.id)
- }
- })
- }
- exports.conf = {
- enabled: true,
- guildOnly: true,
- aliases: ["unmute"],
- permLevel: 0,
- kategori: 'moderasyon'
- };
- exports.help = {
- name: "susturma",
- description: "Belirttiğiniz kişinin yetkilerini alır ve susturuldu rolü verir, süre bitince eski yetkileri verilir!",
- usage: ""
- };