Facebook
From g, 3 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 151
  1. const Discord = require('discord.js');
  2. const ayarlar = require('../ayarlar.json');
  3. const db = require('quick.db');
  4. //Data_TR
  5. exports.run = async(client, message, args) => {
  6.   let prefix = await require('quick.db').fetch(`prefix_${message.guild.id}`) || ayarlar.prefix
  7.   if(!message.member.hasPermission('ADMINISTRATOR')) return message.reply('Bu komutu kullanabilmek için `Yönetici` iznine sahip olmalısın!')
  8.   let panel = await db.fetch(`sunucupanel_${message.guild.id}`)
  9.  
  10.   let rekoronline = await db.fetch(`panelrekor_${message.guild.id}`)
  11.   if(args[0] === "sil" || args[0] === "kapat") {
  12.     db.delete(`sunucupanel_${message.guild.id}`)
  13.     db.delete(`panelrekor_${message.guild.id}`)
  14.   try{
  15.     message.guild.channels.find(x =>(x .name).includes("• Sunucu Panel")).delete()
  16.     message.guild.channels.find(x =>(x .name).includes("Toplam Üye •")).delete()
  17.     message.guild.channels.find(x =>(x .name).includes("Aktif Üye •")).delete()
  18.     message.guild.channels.find(x =>(x .name).includes("Botlar •")).delete()
  19.     message.guild.channels.find(x =>(x .name).includes("Rekor Aktiflik •")).delete()
  20.   } catch(e) { }
  21.     message.channel.send(`Ayarlanan sunucu paneli başarıyla devre dışı bırakıldı!`)
  22.    return
  23.   }
  24. if(panel) return message.channel.send(`Bu sunucuda panel zaten ayarlanmış! Devredışı bırakmak için;  \`${prefix}sunucupanel sil\``)
  25.  
  26.       message.channel.send(new Discord.RichEmbed().setColor('RANDOM').setTitle('Sunucu Panel').setDescription('Gerekli dosaylar kurulsun mu?.').setFooter('Onaylıyorsan 15 saniye içerisinde "evet" yazmalısın.'))
  27. .then(() => {
  28. message.channel.awaitMessages(response => response.content === 'evet', {
  29. max: 1,
  30. time: 15000,
  31. errors: ['time'],
  32. })
  33. .then((collected) => {
  34.  
  35.   db.set(`sunucupanel_${message.guild.id}`, message.guild.id)
  36.   try{
  37.   let role = message.guild.roles.find("name", "@everyone");
  38.   message.guild.createChannel(`${client.user.username} • Sunucu Panel`, 'category', [{id: message.guild.id, deny: ['CONNECT']}]);
  39.         message.guild.createChannel(`Toplam Üye • ${message.guild.members.size}`, 'voice').then(channel => channel.setParent(message.guild.channels.find(channel => channel.name === `${client.user.username} • Sunucu Panel`))).then(c => {
  40.       c.overwritePermissions(role, {
  41.           CONNECT: false,
  42.       });
  43.   })
  44.  message.guild.createChannel(`Aktif Üye • ${message.guild.members.filter(off => off.presence.status !== 'offline').size}`, 'voice').then(channel => channel.setParent(message.guild.channels.find(channel => channel.name === `${client.user.username} • Sunucu Panel`))).then(c => {
  45.       c.overwritePermissions(role, {
  46.           CONNECT: false,
  47.       });
  48.   })
  49.  
  50.         message.guild.createChannel(`Botlar • ${message.guild.members.filter(m => m.user.bot).size}`, 'voice').then(channel => channel.setParent(message.guild.channels.find(channel => channel.name === `${client.user.username} • Sunucu Panel`))).then(c => {
  51.       c.overwritePermissions(role, {
  52.           CONNECT: false,
  53.       });
  54.   })
  55.  
  56.         message.guild.createChannel(`Rekor Aktiflik • ${message.guild.members.filter(off => off.presence.status !== 'offline').size}`, 'voice').then(channel => channel.setParent(message.guild.channels.find(channel => channel.name === `${client.user.username} • Sunucu Panel`))).then(c => {
  57.       c.overwritePermissions(role, {
  58.           CONNECT: false,
  59.       });
  60.   })
  61.   db.set(`panelrekor_${message.guild.id}`, message.guild.members.filter(off => off.presence.status !== 'offline').size)
  62.  
  63.   message.channel.send(`Sunucu panel için gerekli kanallar oluşturulup, ayarlamalar yapıldı!  \`(Oda isimlerini değiştirmeyin, çalışmaz!)\``)
  64.    
  65. }catch(e){
  66.       console.log(e.stack);
  67.     }
  68.  
  69.     });
  70. });
  71.  
  72. };
  73.  
  74. exports.conf = {
  75.   enabled: true,
  76.   guildOnly: true,
  77.   aliases: ["sunucu-panel"],
  78.   permLevel: 3
  79. };
  80.  
  81. exports.help = {
  82.   name: 'sunucupanel',
  83.   description: 'Sunucu İstatistiklerini Gösteren Panel Kurar Ve Sürekli Olarak Günceller.',
  84.   usage: 'sunucupanel',
  85.   kategori: 'yetkili'
  86. };