text: const Discord = require('discord.js');
  const client = new Discord.Client();
  const ayarlar = require('./ayarlar.json');
  const chalk = require('chalk');
  const fs = require('fs');
  const moment = require('moment');
  require('./util/eventLoader')(client);
  
  var prefix = ayarlar.prefix;
  
  const log = message => {
    console.log(`[${moment().format('YYYY-MM-DD HH:mm:ss')}] ${message}`);
  };
  
  client.commands = new Discord.Collection();
  client.aliases = new Discord.Collection();
  fs.readdir('./komutlar/', (err, files) => {
    if (err) console.error(err);
    log(`${files.length} komut yüklenecek.`);
    files.forEach(f => {
      let props = require(`./komutlar/${f}`);
      log(`Yüklenen komut: ${props.help.name}.`);
      client.commands.set(props.help.name, props);
      props.conf.aliases.forEach(alias => {
        client.aliases.set(alias, props.help.name);
      });
    });
  });
  
  client.reload = command => {
    return new Promise((resolve, reject) => {
      try {
        delete require.cache[require.resolve(`./komutlar/${command}`)];
        let cmd = require(`./komutlar/${command}`);
        client.commands.delete(command);
        client.aliases.forEach((cmd, alias) => {
          if (cmd === command) client.aliases.delete(alias);
        });
        client.commands.set(command, cmd);
        cmd.conf.aliases.forEach(alias => {
          client.aliases.set(alias, cmd.help.name);
        });
        resolve();
      } catch (e){
        reject(e);
      }
    });
  };
  
  client.load = command => {
    return new Promise((resolve, reject) => {
      try {
        let cmd = require(`./komutlar/${command}`);
        client.commands.set(command, cmd);
        cmd.conf.aliases.forEach(alias => {
          client.aliases.set(alias, cmd.help.name);
        });
        resolve();
      } catch (e){
        reject(e);
      }
    });
  };
  
  client.unload = command => {
    return new Promise((resolve, reject) => {
      try {
        delete require.cache[require.resolve(`./komutlar/${command}`)];
        let cmd = require(`./komutlar/${command}`);
        client.commands.delete(command);
        client.aliases.forEach((cmd, alias) => {
          if (cmd === command) client.aliases.delete(alias);
        });
        resolve();
      } catch (e){
        reject(e);
      }
    });
  };
  
  client.on('message', msg => {
    if (msg.content.toLowerCase() === 'sa') {
      msg.reply('Aleyküm selam biladerim, hoşgeldin.');
    }
  });
  
  client.on('message', msg => {
    if (msg.content.toLowerCase() === 'aq') {
      msg.reply('Hooop! Sakin ol koçum, küfür yok.');
    }
  });
  
  client.on('message', msg => {
    if (msg.content.toLowerCase() === 'sik') {
      msg.reply('Hooop! Sakin ol koçum, küfür yok.');
    }
  });
  
  client.on('message', msg => {
    if (msg.content.toLowerCase() === 'sikerim') {
      msg.reply('Hooop! Sakin ol koçum, küfür yok.');
    }  
  });
  
  client.on('message', msg => {
    if (msg.content.toLowerCase() === 'amk') {
      msg.reply('Hooop! Sakin ol koçum, küfür yok.');
    }
  });
  
  client.on('message', msg => {
    if (msg.content.toLowerCase() === 'siktirgit') {
      msg.reply('Hooop! Sakin ol koçum, küfür yok.');
    }
  if (msg.content === 'selamun aleyküm') {
     	msg.reply('Ve aleyküm selam kardeşim.');
    }
  
    if (msg.content === 'bye bye') {
     	msg.reply('Hadi görüşürüz canım.');
    }
  
    if (msg.content === 'günaydın') {
     	msg.reply('Hoop ya günaydın naber? :)');
    }
  
    if (msg.content === 'herkese günaydın') {
     	msg.reply('Yepyeni bir gün, sanada günaydın canım.');
    }
  
    if (msg.content === 'iyi geceler') {
     	msg.reply('Sanada iyi gececikler kardeşim.');
    }
  
    if (msg.content === 'iyi akşamlar') {
     	msg.reply('İyi akşamlar kardeşim.');
    }
  
    if (msg.content === 'selamın aleyküm') {
     	msg.reply('Aleyküm selam be kardeş.');
    }
  
    if (msg.content === 'güle güle') {
     	msg.reply('Hadi güle güle git :)');
    }
    
  });
  
  client.elevation = message => {
    if(!message.guild) {
  	return; }
    let permlvl = 0;
    if (message.member.hasPermission("BAN_MEMBERS")) permlvl = 2;
    if (message.member.hasPermission("ADMINISTRATOR")) permlvl = 3;
    if (message.author.id === ayarlar.sahip) permlvl = 4;
    return permlvl;
  };
  
  var regToken = /[\w\d]{24}\.[\w\d]{6}\.[\w\d-_]{27}/g;
  // client.on('debug', e => {
  //   console.log(chalk.bgBlue.green(e.replace(regToken, 'that was redacted')));
  // });
  
  client.on('warn', e => {
    console.log(chalk.bgYellow(e.replace(regToken, 'that was redacted')));
  });
  
  client.on('error', e => {
    console.log(chalk.bgRed(e.replace(regToken, 'that was redacted')));
  });
  
  client.login(process.env.BOT_TOKEN);
  