JohnTomah

log

Mar 26th, 2019
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 26.95 KB | None | 0 0
  1. client.on('messageDelete', message => {
  2. if(message.author.bot) return;
  3. if(message.channel.type === 'dm') return;
  4. if(!message.guild.member(client.user).hasPermission('EMBED_LINKS')) return;
  5. if(!message.guild.member(client.user).hasPermission('MANAGE_MESSAGES')) return;
  6.  
  7. var logChannel = message.guild.channels.find(c => c.name === 'log');
  8. if(!logChannel) return;
  9.  
  10. let messageDelete = new Discord.RichEmbed()
  11. .setTitle('**[MESSAGE DELETE]**')
  12. .setColor('RED')
  13. .setThumbnail(message.author.avatarURL)
  14. .setDescription(`**\n**:wastebasket: Successfully \`\`DELETE\`\` **MESSAGE** In ${message.channel}\n\n**Channel:** \`\`${message.channel.name}\`\` (ID: ${message.channel.id})\n**Message ID:** ${message.id}\n**Sent By:** <@${message.author.id}> (ID: ${message.author.id})\n**Message:**\n\`\`\`${message}\`\`\``)
  15. .setTimestamp()
  16. .setFooter(message.guild.name, message.guild.iconURL)
  17.  
  18. logChannel.send(messageDelete);
  19. });
  20. client.on('messageUpdate', (oldMessage, newMessage) => {
  21.  
  22. if(oldMessage.author.bot) return;
  23. if(!oldMessage.channel.type === 'dm') return;
  24. if(!oldMessage.guild.member(client.user).hasPermission('EMBED_LINKS')) return;
  25. if(!oldMessage.guild.member(client.user).hasPermission('MANAGE_MESSAGES')) return;
  26.  
  27. var logChannel = oldMessage.guild.channels.find(c => c.name === 'log');
  28. if(!logChannel) return;
  29.  
  30. if(oldMessage.content.startsWith('https://')) return;
  31.  
  32. let messageUpdate = new Discord.RichEmbed()
  33. .setTitle('**[MESSAGE EDIT]**')
  34. .setThumbnail(oldMessage.author.avatarURL)
  35. .setColor('BLUE')
  36. .setDescription(`**\n**:wrench: Successfully \`\`EDIT\`\` **MESSAGE** In ${oldMessage.channel}\n\n**Channel:** \`\`${oldMessage.channel.name}\`\` (ID: ${oldMessage.channel.id})\n**Message ID:** ${oldMessage.id}\n**Sent By:** <@${oldMessage.author.id}> (ID: ${oldMessage.author.id})\n\n**Old Message:**\`\`\`${oldMessage}\`\`\`\n**New Message:**\`\`\`${newMessage}\`\`\``)
  37. .setTimestamp()
  38. .setFooter(oldMessage.guild.name, oldMessage.guild.iconURL)
  39.  
  40. logChannel.send(messageUpdate);
  41. });
  42.  
  43.  
  44. // Roles Logs
  45. client.on('roleCreate', role => {
  46.  
  47. if(!role.guild.member(client.user).hasPermission('EMBED_LINKS')) return;
  48. if(!role.guild.member(client.user).hasPermission('VIEW_AUDIT_LOG')) return;
  49.  
  50. var logChannel = role.guild.channels.find(c => c.name === 'log');
  51. if(!logChannel) return;
  52.  
  53. role.guild.fetchAuditLogs().then(logs => {
  54. var userID = logs.entries.first().executor.id;
  55. var userAvatar = logs.entries.first().executor.avatarURL;
  56.  
  57. let roleCreate = new Discord.RichEmbed()
  58. .setTitle('**[ROLE CREATE]**')
  59. .setThumbnail(userAvatar)
  60. .setDescription(`**\n**:white_check_mark: Successfully \`\`CREATE\`\` Role.\n\n**Role Name:** \`\`${role.name}\`\` (ID: ${role.id})\n**By:** <@${userID}> (ID: ${userID})`)
  61. .setColor('GREEN')
  62. .setTimestamp()
  63. .setFooter(role.guild.name, role.guild.iconURL)
  64.  
  65. logChannel.send(roleCreate);
  66. })
  67. });
  68. client.on('roleDelete', role => {
  69.  
  70. if(!role.guild.member(client.user).hasPermission('EMBED_LINKS')) return;
  71. if(!role.guild.member(client.user).hasPermission('VIEW_AUDIT_LOG')) return;
  72.  
  73. var logChannel = role.guild.channels.find(c => c.name === 'log');
  74. if(!logChannel) return;
  75.  
  76. role.guild.fetchAuditLogs().then(logs => {
  77. var userID = logs.entries.first().executor.id;
  78. var userAvatar = logs.entries.first().executor.avatarURL;
  79.  
  80. let roleDelete = new Discord.RichEmbed()
  81. .setTitle('**[ROLE DELETE]**')
  82. .setThumbnail(userAvatar)
  83. .setDescription(`**\n**:white_check_mark: Successfully \`\`DELETE\`\` Role.\n\n**Role Name:** \`\`${role.name}\`\` (ID: ${role.id})\n**By:** <@${userID}> (ID: ${userID})`)
  84. .setColor('RED')
  85. .setTimestamp()
  86. .setFooter(role.guild.name, role.guild.iconURL)
  87.  
  88. logChannel.send(roleDelete);
  89. })
  90. });
  91. client.on('roleUpdate', (oldRole, newRole) => {
  92.  
  93. if(!oldRole.guild.member(client.user).hasPermission('EMBED_LINKS')) return;
  94. if(!oldRole.guild.member(client.user).hasPermission('VIEW_AUDIT_LOG')) return;
  95.  
  96. var logChannel = oldRole.guild.channels.find(c => c.name === 'log');
  97. if(!logChannel) return;
  98.  
  99. oldRole.guild.fetchAuditLogs().then(logs => {
  100. var userID = logs.entries.first().executor.id;
  101. var userAvatar = logs.entries.first().executor.avatarURL;
  102.  
  103. if(oldRole.name !== newRole.name) {
  104. let roleUpdateName = new Discord.RichEmbed()
  105. .setTitle('**[ROLE NAME UPDATE]**')
  106. .setThumbnail(userAvatar)
  107. .setColor('BLUE')
  108. .setDescription(`**\n**:white_check_mark: Successfully \`\`EDITED\`\` Role Name.\n\n**Old Name:** \`\`${oldRole.name}\`\`\n**New Name:** \`\`${newRole.name}\`\`\n**Role ID:** ${oldRole.id}\n**By:** <@${userID}> (ID: ${userID})`)
  109. .setTimestamp()
  110. .setFooter(oldRole.guild.name, oldRole.guild.iconURL)
  111.  
  112. logChannel.send(roleUpdateName);
  113. }
  114. if(oldRole.hexColor !== newRole.hexColor) {
  115. if(oldRole.hexColor === '#000000') {
  116. var oldColor = '`Default`';
  117. }else {
  118. var oldColor = oldRole.hexColor;
  119. }
  120. if(newRole.hexColor === '#000000') {
  121. var newColor = '`Default`';
  122. }else {
  123. var newColor = newRole.hexColor;
  124. }
  125. let roleUpdateColor = new Discord.RichEmbed()
  126. .setTitle('**[ROLE COLOR UPDATE]**')
  127. .setThumbnail(userAvatar)
  128. .setColor('BLUE')
  129. .setDescription(`**\n**:white_check_mark: Successfully \`\`EDITED\`\` **${oldRole.name}** Role Color.\n\n**Old Color:** ${oldColor}\n**New Color:** ${newColor}\n**Role ID:** ${oldRole.id}\n**By:** <@${userID}> (ID: ${userID})`)
  130. .setTimestamp()
  131. .setFooter(oldRole.guild.name, oldRole.guild.iconURL)
  132.  
  133. logChannel.send(roleUpdateColor);
  134. }
  135. if(oldRole.permissions !== newRole.permissions) {
  136. let roleUpdate = new Discord.RichEmbed()
  137. .setTitle('**[UPDATE ROLE PERMISSIONS]**')
  138. .setThumbnail(userAvatar)
  139. .setColor('BLUE')
  140. .setDescription(`**\n**:first_place: Successfully \`\`CHANGED\`\` **${oldRole.name}** Permissions!\n\n**Old Permissions:** \`\`${oldRole.permissions}\`\`\n**New Permissions:** \`\`${newRole.permissions}\`\`\n**By:** <@${userID}> (ID: ${userID})`)
  141. .setTimestamp()
  142. .setFooter(oldRole.guild.name, oldRole.guild.iconURL)
  143.  
  144. logChannel.send(roleUpdate)
  145. }
  146. })
  147. });
  148.  
  149.  
  150. // Channels Log
  151. client.on('channelCreate', channel => {
  152.  
  153. if(!channel.guild) return;
  154. if(!channel.guild.member(client.user).hasPermission('EMBED_LINKS')) return;
  155. if(!channel.guild.member(client.user).hasPermission('VIEW_AUDIT_LOG')) return;
  156.  
  157. var logChannel = channel.guild.channels.find(c => c.name === 'log');
  158. if(!logChannel) return;
  159.  
  160. if(channel.type === 'text') {
  161. var roomType = 'Text';
  162. }else
  163. if(channel.type === 'voice') {
  164. var roomType = 'Voice';
  165. }else
  166. if(channel.type === 'category') {
  167. var roomType = 'Category';
  168. }
  169.  
  170. channel.guild.fetchAuditLogs().then(logs => {
  171. var userID = logs.entries.first().executor.id;
  172. var userAvatar = logs.entries.first().executor.avatarURL;
  173.  
  174. let channelCreate = new Discord.RichEmbed()
  175. .setTitle('**[CHANNEL CREATE]**')
  176. .setThumbnail(userAvatar)
  177. .setDescription(`**\n**:white_check_mark: Successfully \`\`CREATE\`\` **${roomType}** channel.\n\n**Channel Name:** \`\`${channel.name}\`\` (ID: ${channel.id})\n**By:** <@${userID}> (ID: ${userID})`)
  178. .setColor('GREEN')
  179. .setTimestamp()
  180. .setFooter(channel.guild.name, channel.guild.iconURL)
  181.  
  182. logChannel.send(channelCreate);
  183. })
  184. });
  185. client.on('channelDelete', channel => {
  186. if(!channel.guild) return;
  187. if(!channel.guild.member(client.user).hasPermission('EMBED_LINKS')) return;
  188. if(!channel.guild.member(client.user).hasPermission('VIEW_AUDIT_LOG')) return;
  189.  
  190. var logChannel = channel.guild.channels.find(c => c.name === 'log');
  191. if(!logChannel) return;
  192.  
  193. if(channel.type === 'text') {
  194. var roomType = 'Text';
  195. }else
  196. if(channel.type === 'voice') {
  197. var roomType = 'Voice';
  198. }else
  199. if(channel.type === 'category') {
  200. var roomType = 'Category';
  201. }
  202.  
  203. channel.guild.fetchAuditLogs().then(logs => {
  204. var userID = logs.entries.first().executor.id;
  205. var userAvatar = logs.entries.first().executor.avatarURL;
  206.  
  207. let channelDelete = new Discord.RichEmbed()
  208. .setTitle('**[CHANNEL DELETE]**')
  209. .setThumbnail(userAvatar)
  210. .setDescription(`**\n**:white_check_mark: Successfully \`\`DELETE\`\` **${roomType}** channel.\n\n**Channel Name:** \`\`${channel.name}\`\` (ID: ${channel.id})\n**By:** <@${userID}> (ID: ${userID})`)
  211. .setColor('RED')
  212. .setTimestamp()
  213. .setFooter(channel.guild.name, channel.guild.iconURL)
  214.  
  215. logChannel.send(channelDelete);
  216. })
  217. });
  218. client.on('channelUpdate', (oldChannel, newChannel) => {
  219. if(!oldChannel.guild) return;
  220.  
  221. var logChannel = oldChannel.guild.channels.find(c => c.name === 'log');
  222. if(!logChannel) return;
  223.  
  224. if(oldChannel.type === 'text') {
  225. var channelType = 'Text';
  226. }else
  227. if(oldChannel.type === 'voice') {
  228. var channelType = 'Voice';
  229. }else
  230. if(oldChannel.type === 'category') {
  231. var channelType = 'Category';
  232. }
  233.  
  234. oldChannel.guild.fetchAuditLogs().then(logs => {
  235. var userID = logs.entries.first().executor.id;
  236. var userAvatar = logs.entries.first().executor.avatarURL;
  237.  
  238. if(oldChannel.name !== newChannel.name) {
  239. let newName = new Discord.RichEmbed()
  240. .setTitle('**[CHANNEL EDIT]**')
  241. .setThumbnail(userAvatar)
  242. .setColor('BLUE')
  243. .setDescription(`**\n**:wrench: Successfully Edited **${channelType}** Channel Name\n\n**Old Name:** \`\`${oldChannel.name}\`\`\n**New Name:** \`\`${newChannel.name}\`\`\n**Channel ID:** ${oldChannel.id}\n**By:** <@${userID}> (ID: ${userID})`)
  244. .setTimestamp()
  245. .setFooter(oldChannel.guild.name, oldChannel.guild.iconURL)
  246.  
  247. logChannel.send(newName);
  248. }
  249. if(oldChannel.topic !== newChannel.topic) {
  250. let newTopic = new Discord.RichEmbed()
  251. .setTitle('**[CHANNEL EDIT]**')
  252. .setThumbnail(userAvatar)
  253. .setColor('BLUE')
  254. .setDescription(`**\n**:wrench: Successfully Edited **${channelType}** Channel Topic\n\n**Old Topic:**\n\`\`\`${oldChannel.topic || 'NULL'}\`\`\`\n**New Topic:**\n\`\`\`${newChannel.topic || 'NULL'}\`\`\`\n**Channel:** ${oldChannel} (ID: ${oldChannel.id})\n**By:** <@${userID}> (ID: ${userID})`)
  255. .setTimestamp()
  256. .setFooter(oldChannel.guild.name, oldChannel.guild.iconURL)
  257.  
  258. logChannel.send(newTopic);
  259. }
  260. })
  261. });
  262.  
  263.  
  264. // Guild Logs
  265. client.on('guildBanAdd', (guild, user) => {
  266.  
  267. if(!guild.member(client.user).hasPermission('EMBED_LINKS')) return;
  268. if(!guild.member(client.user).hasPermission('VIEW_AUDIT_LOG')) return;
  269.  
  270. var logChannel = guild.channels.find(c => c.name === 'log');
  271. if(!logChannel) return;
  272.  
  273. guild.fetchAuditLogs().then(logs => {
  274. var userID = logs.entries.first().executor.id;
  275. var userAvatar = logs.entries.first().executor.avatarURL;
  276.  
  277. if(userID === client.user.id) return;
  278.  
  279. let banInfo = new Discord.RichEmbed()
  280. .setTitle('**[BANNED]**')
  281. .setThumbnail(userAvatar)
  282. .setColor('DARK_RED')
  283. .setDescription(`**\n**:airplane: Successfully \`\`BANNED\`\` **${user.username}** From the server!\n\n**User:** <@${user.id}> (ID: ${user.id})\n**By:** <@${userID}> (ID: ${userID})`)
  284. .setTimestamp()
  285. .setFooter(guild.name, guild.iconURL)
  286.  
  287. logChannel.send(banInfo);
  288. })
  289. });
  290. client.on('guildBanRemove', (guild, user) => {
  291. if(!guild.member(client.user).hasPermission('EMBED_LINKS')) return;
  292. if(!guild.member(client.user).hasPermission('VIEW_AUDIT_LOG')) return;
  293.  
  294. var logChannel = guild.channels.find(c => c.name === 'log');
  295. if(!logChannel) return;
  296.  
  297. guild.fetchAuditLogs().then(logs => {
  298. var userID = logs.entries.first().executor.id;
  299. var userAvatar = logs.entries.first().executor.avatarURL;
  300.  
  301. let unBanInfo = new Discord.RichEmbed()
  302. .setTitle('**[UNBANNED]**')
  303. .setThumbnail(userAvatar)
  304. .setColor('GREEN')
  305. .setDescription(`**\n**:unlock: Successfully \`\`UNBANNED\`\` **${user.username}** From the server\n\n**User:** <@${user.id}> (ID: ${user.id})\n**By:** <@${userID}> (ID: ${userID})`)
  306. .setTimestamp()
  307. .setFooter(guild.name, guild.iconURL)
  308.  
  309. logChannel.send(unBanInfo);
  310. })
  311. });
  312. client.on('guildUpdate', (oldGuild, newGuild) => {
  313.  
  314. if(!oldGuild.member(client.user).hasPermission('EMBED_LINKS')) return;
  315. if(!oldGuild.member(client.user).hasPermission('VIEW_AUDIT_LOG')) return;
  316.  
  317. var logChannel = oldGuild.channels.find(c => c.id === guildSettings[oldGuild.id].logChannel);
  318. if(!logChannel) return;
  319.  
  320. oldGuild.fetchAuditLogs().then(logs => {
  321. var userID = logs.entries.first().executor.id;
  322. var userAvatar = logs.entries.first().executor.avatarURL;
  323.  
  324. if(oldGuild.name !== newGuild.name) {
  325. let guildName = new Discord.RichEmbed()
  326. .setTitle('**[CHANGE GUILD NAME]**')
  327. .setThumbnail(userAvatar)
  328. .setColor('BLUE')
  329. .setDescription(`**\n**:white_check_mark: Successfully \`\`EDITED\`\` The guild name.\n\n**Old Name:** \`\`${oldGuild.name}\`\`\n**New Name:** \`\`${newGuild.name}\`\`\n**By:** <@${userID}> (ID: ${userID})`)
  330. .setTimestamp()
  331. .setFooter(newGuild.name, oldGuild.iconURL)
  332.  
  333. logChannel.send(guildName)
  334. }
  335. if(oldGuild.region !== newGuild.region) {
  336. let guildRegion = new Discord.RichEmbed()
  337. .setTitle('**[CHANGE GUILD REGION]**')
  338. .setThumbnail(userAvatar)
  339. .setColor('BLUE')
  340. .setDescription(`**\n**:white_check_mark: Successfully \`\`EDITED\`\` The guild region.\n\n**Old Region:** ${oldGuild.region}\n**New Region:** ${newGuild.region}\n**By:** <@${userID}> (ID: ${userID})`)
  341. .setTimestamp()
  342. .setFooter(oldGuild.name, oldGuild.iconURL)
  343.  
  344. logChannel.send(guildRegion);
  345. }
  346. if(oldGuild.verificationLevel !== newGuild.verificationLevel) {
  347. if(oldGuild.verificationLevel === 0) {
  348. var oldVerLvl = 'Very Easy';
  349. }else
  350. if(oldGuild.verificationLevel === 1) {
  351. var oldVerLvl = 'Easy';
  352. }else
  353. if(oldGuild.verificationLevel === 2) {
  354. var oldVerLvl = 'Medium';
  355. }else
  356. if(oldGuild.verificationLevel === 3) {
  357. var oldVerLvl = 'Hard';
  358. }else
  359. if(oldGuild.verificationLevel === 4) {
  360. var oldVerLvl = 'Very Hard';
  361. }
  362.  
  363. if(newGuild.verificationLevel === 0) {
  364. var newVerLvl = 'Very Easy';
  365. }else
  366. if(newGuild.verificationLevel === 1) {
  367. var newVerLvl = 'Easy';
  368. }else
  369. if(newGuild.verificationLevel === 2) {
  370. var newVerLvl = 'Medium';
  371. }else
  372. if(newGuild.verificationLevel === 3) {
  373. var newVerLvl = 'Hard';
  374. }else
  375. if(newGuild.verificationLevel === 4) {
  376. var newVerLvl = 'Very Hard';
  377. }
  378.  
  379. let verLog = new Discord.RichEmbed()
  380. .setTitle('**[GUILD VERIFICATION LEVEL CHANGE]**')
  381. .setThumbnail(userAvatar)
  382. .setColor('BLUE')
  383. .setDescription(`**\n**:white_check_mark: Successfully \`\`EDITED\`\` Guild verification level.\n\n**Old Verification Level:** ${oldVerLvl}\n**New Verification Level:** ${newVerLvl}\n**By:** <@${userID}> (ID: ${userID})`)
  384. .setTimestamp()
  385. .setFooter(oldGuild.name, oldGuild.iconURL)
  386.  
  387. logChannel.send(verLog);
  388. }
  389. })
  390. });
  391. client.on('guildMemberUpdate', (oldMember, newMember) => {
  392. var logChannel = oldMember.guild.channels.find(c => c.name === 'log');
  393. if(!logChannel) return;
  394.  
  395. oldMember.guild.fetchAuditLogs().then(logs => {
  396. var userID = logs.entries.first().executor.id;
  397. var userAvatar = logs.entries.first().executor.avatarURL;
  398. var userTag = logs.entries.first().executor.tag;
  399.  
  400. if(oldMember.nickname !== newMember.nickname) {
  401. if(oldMember.nickname === null) {
  402. var oldNM = '\`\`اسمه الاصلي\`\`';
  403. }else {
  404. var oldNM = oldMember.nickname;
  405. }
  406. if(newMember.nickname === null) {
  407. var newNM = '\`\`اسمه الاصلي\`\`';
  408. }else {
  409. var newNM = newMember.nickname;
  410. }
  411.  
  412. let updateNickname = new Discord.RichEmbed()
  413. .setTitle('**[UPDATE MEMBER NICKNAME]**')
  414. .setThumbnail(userAvatar)
  415. .setColor('BLUE')
  416. .setDescription(`**\n**:spy: Successfully \`\`CHANGE\`\` Member Nickname.\n\n**User:** ${oldMember} (ID: ${oldMember.id})\n**Old Nickname:** ${oldNM}\n**New Nickname:** ${newNM}\n**By:** <@${userID}> (ID: ${userID})`)
  417. .setTimestamp()
  418. .setFooter(oldMember.guild.name, oldMember.guild.iconURL)
  419.  
  420. logChannel.send(updateNickname);
  421. }
  422. if(oldMember.roles.size < newMember.roles.size) {
  423. let role = newMember.roles.filter(r => !oldMember.roles.has(r.id)).first();
  424.  
  425. let roleAdded = new Discord.RichEmbed()
  426. .setTitle('**[ADDED ROLE TO MEMBER]**')
  427. .setThumbnail(oldMember.guild.iconURL)
  428. .setColor('GREEN')
  429. .setDescription(`**\n**:white_check_mark: Successfully \`\`ADDED\`\` Role to **${oldMember.user.username}**\n\n**User:** <@${oldMember.id}> (ID: ${oldMember.user.id})\n**Role:** \`\`${role.name}\`\` (ID: ${role.id})\n**By:** <@${userID}> (ID: ${userID})`)
  430. .setTimestamp()
  431. .setFooter(userTag, userAvatar)
  432.  
  433. logChannel.send(roleAdded);
  434. }
  435. if(oldMember.roles.size > newMember.roles.size) {
  436. let role = oldMember.roles.filter(r => !newMember.roles.has(r.id)).first();
  437.  
  438. let roleRemoved = new Discord.RichEmbed()
  439. .setTitle('**[REMOVED ROLE FROM MEMBER]**')
  440. .setThumbnail(oldMember.guild.iconURL)
  441. .setColor('RED')
  442. .setDescription(`**\n**:negative_squared_cross_mark: Successfully \`\`REMOVED\`\` Role from **${oldMember.user.username}**\n\n**User:** <@${oldMember.user.id}> (ID: ${oldMember.id})\n**Role:** \`\`${role.name}\`\` (ID: ${role.id})\n**By:** <@${userID}> (ID: ${userID})`)
  443. .setTimestamp()
  444. .setFooter(userTag, userAvatar)
  445.  
  446. logChannel.send(roleRemoved);
  447. }
  448. })
  449. if(oldMember.guild.owner.user.id !== newMember.guild.owner.user.id) {
  450. let newOwner = new Discord.RichEmbed()
  451. .setTitle('**[UPDATE GUILD OWNER]**')
  452. .setThumbnail(oldMember.guild.iconURL)
  453. .setColor('GREEN')
  454. .setDescription(`**\n**:white_check_mark: Successfully \`\`TRANSFER\`\` The Owner Ship.\n\n**Old Owner:** <@${oldMember.user.id}> (ID: ${oldMember.user.id})\n**New Owner:** <@${newMember.user.id}> (ID: ${newMember.user.id})`)
  455. .setTimestamp()
  456. .setFooter(oldMember.guild.name, oldMember.guild.iconURL)
  457.  
  458. logChannel.send(newOwner);
  459. }
  460. });
  461. client.on('guildMemberAdd', member => {
  462. var logChannel = member.guild.channels.find(c => c.name === 'log');
  463. if(!logChannel) return;
  464.  
  465. let newMember = new Discord.RichEmbed()
  466. .setTitle('**[NEW MEMBER ADDED]**')
  467. .setThumbnail(member.user.avatarURL)
  468. .setColor('GREEN')
  469. .setDescription(`**\n**:arrow_lower_right: Joined **${member.user.username}** To the server!\n\n**User:** <@${member.user.id}> (ID: ${member.user.id})\n**Days In Discord:** ${Days(member.user.createdAt)}`)
  470. .setTimestamp()
  471. .setFooter(member.user.tag, member.user.avatarURL)
  472.  
  473. logChannel.send(newMember);
  474. });
  475. function Days(date) {
  476. let now = new Date();
  477. let diff = now.getTime() - date.getTime();
  478. let days = Math.floor(diff / 86400000);
  479. return days + (days == 1 ? " day" : " days") + " ago";
  480. }
  481. client.on('guildMemberRemove', member => {
  482. var logChannel = member.guild.channels.find(c => c.name === 'log');
  483. if(!logChannel) return;
  484.  
  485. let leaveMember = new Discord.RichEmbed()
  486. .setTitle('**[LEAVE MEMBER]**')
  487. .setThumbnail(member.user.avatarURL)
  488. .setColor('GREEN')
  489. .setDescription(`**\n**:arrow_upper_left: Leave **${member.user.username}** From the server.\n\n**User:** <@${member.user.id}> (ID: ${member.user.id})`)
  490. .setTimestamp()
  491. .setFooter(member.user.tag, member.user.avatarURL)
  492.  
  493. logChannel.send(leaveMember);
  494. });
  495.  
  496.  
  497. // Voice Logs
  498. client.on('voiceStateUpdate', (voiceOld, voiceNew) => {
  499.  
  500. if(!voiceOld.guild.member(client.user).hasPermission('EMBED_LINKS')) return;
  501. if(!voiceOld.guild.member(client.user).hasPermission('VIEW_AUDIT_LOG')) return;
  502.  
  503. var logChannel = voiceOld.guild.channels.find(c => c.name === 'log');
  504. if(!logChannel) return;
  505.  
  506. voiceOld.guild.fetchAuditLogs().then(logs => {
  507. var userID = logs.entries.first().executor.id;
  508. var userTag = logs.entries.first().executor.tag;
  509. var userAvatar = logs.entries.first().executor.avatarURL;
  510.  
  511. // Server Muted Voice
  512. if(voiceOld.serverMute === false && voiceNew.serverMute === true) {
  513. let serverMutev = new Discord.RichEmbed()
  514. .setTitle('**[VOICE MUTE]**')
  515. .setThumbnail('https://images-ext-1.discordapp.net/external/pWQaw076OHwVIFZyeFoLXvweo0T_fDz6U5C9RBlw_fQ/https/cdn.pg.sa/UosmjqDNgS.png')
  516. .setColor('RED')
  517. .setDescription(`**User:** <@${voiceOld.user.id}> (ID: ${voiceOld.user.id})\n**By:** <@${userID}> (ID: ${userID})\n**Channel:** \`\`${voiceOld.voiceChannel.name}\`\` (ID: ${voiceOld.voiceChannel.id})`)
  518. .setTimestamp()
  519. .setFooter(userTag, userAvatar)
  520.  
  521. logChannel.send(serverMutev);
  522. }
  523. // Server UnMuted Voice
  524. if(voiceOld.serverMute === true && voiceNew.serverMute === false) {
  525. let serverUnmutev = new Discord.RichEmbed()
  526. .setTitle('**[VOICE UNMUTE]**')
  527. .setThumbnail('https://images-ext-1.discordapp.net/external/u2JNOTOc1IVJGEb1uCKRdQHXIj5-r8aHa3tSap6SjqM/https/cdn.pg.sa/Iy4t8H4T7n.png')
  528. .setColor('GREEN')
  529. .setDescription(`**User:** <@${voiceOld.user.id}> (ID: ${voiceOld.user.id})\n**By:** <@${userID}> (ID: ${userID})\n**Channel:** \`\`${voiceOld.voiceChannel.name}\`\` (ID: ${voiceOld.voiceChannel.id})`)
  530. .setTimestamp()
  531. .setFooter(userTag, userAvatar)
  532.  
  533. logChannel.send(serverUnmutev);
  534. }
  535. // Server Deafen Voice
  536. if(voiceOld.serverDeaf === false && voiceNew.serverDeaf === true) {
  537. let serverDeafv = new Discord.RichEmbed()
  538. .setTitle('**[VOICE DEAFEN]**')
  539. .setThumbnail('https://images-ext-1.discordapp.net/external/7ENt2ldbD-3L3wRoDBhKHb9FfImkjFxYR6DbLYRjhjA/https/cdn.pg.sa/auWd5b95AV.png')
  540. .setColor('RED')
  541. .setDescription(`**User:** <@${voiceOld.user.id}> (ID: ${voiceOld.user.id})\n**By:** <@${userID}> (ID: ${userID})\n**Channel:** \`\`${voiceOld.voiceChannel.name}\`\` (ID: ${voiceOld.voiceChannel.id})`)
  542. .setTimestamp()
  543. .setFooter(userTag, userAvatar)
  544.  
  545. logChannel.send(serverDeafv);
  546. }
  547. // Server UnDeafen Voice
  548. if(voiceOld.serverDeaf === true && voiceNew.serverDeaf === false) {
  549. let serverUndeafv = new Discord.RichEmbed()
  550. .setTitle('**[VOICE UNDEAFEN]**')
  551. .setThumbnail('https://images-ext-2.discordapp.net/external/s_abcfAlNdxl3uYVXnA2evSKBTpU6Ou3oimkejx3fiQ/https/cdn.pg.sa/i7fC8qnbRF.png')
  552. .setColor('GREEN')
  553. .setDescription(`**User:** <@${voiceOld.user.id}> (ID: ${voiceOld.user.id})\n**By:** <@${userID}> (ID: ${userID})\n**Channel:** \`\`${voiceOld.voiceChannel.name}\`\` (ID: ${voiceOld.voiceChannel.id})`)
  554. .setTimestamp()
  555. .setFooter(userTag, userAvatar)
  556.  
  557. logChannel.send(serverUndeafv);
  558. }
  559. })
  560. // Join Voice Channel
  561. if(voiceOld.voiceChannelID !== voiceNew.voiceChannelID && !voiceOld.voiceChannel) {
  562. let voiceJoin = new Discord.RichEmbed()
  563. .setTitle('**[JOIN VOICE ROOM]**')
  564. .setColor('GREEN')
  565. .setThumbnail(voiceOld.user.avatarURL)
  566. .setDescription(`**\n**:arrow_lower_right: Successfully \`\`JOIN\`\` To Voice Channel.\n\n**Channel:** \`\`${voiceNew.voiceChannel.name}\`\` (ID: ${voiceNew.voiceChannelID})\n**User:** ${voiceOld} (ID: ${voiceOld.id})`)
  567. .setTimestamp()
  568. .setFooter(voiceOld.user.tag, voiceOld.user.avatarURL)
  569.  
  570. logChannel.send(voiceJoin);
  571. }
  572. // Leave Voice Channel
  573. if(voiceOld.voiceChannelID !== voiceNew.voiceChannelID && !voiceNew.voiceChannel) {
  574. let voiceLeave = new Discord.RichEmbed()
  575. .setTitle('**[LEAVE VOICE ROOM]**')
  576. .setColor('GREEN')
  577. .setThumbnail(voiceOld.user.avatarURL)
  578. .setDescription(`**\n**:arrow_upper_left: Successfully \`\`LEAVE\`\` From Voice Channel.\n\n**Channel:** \`\`${voiceOld.voiceChannel.name}\`\` (ID: ${voiceOld.voiceChannelID})\n**User:** ${voiceOld} (ID: ${voiceOld.id})`)
  579. .setTimestamp()
  580. .setFooter(voiceOld.user.tag, voiceOld.user.avatarURL)
  581.  
  582. logChannel.send(voiceLeave);
  583. }
  584. // Changed Voice Channel
  585. if(voiceOld.voiceChannelID !== voiceNew.voiceChannelID && voiceNew.voiceChannel && voiceOld.voiceChannel != null) {
  586. let voiceLeave = new Discord.RichEmbed()
  587. .setTitle('**[CHANGED VOICE ROOM]**')
  588. .setColor('GREEN')
  589. .setThumbnail(voiceOld.user.avatarURL)
  590. .setDescription(`**\n**:repeat: Successfully \`\`CHANGED\`\` The Voice Channel.\n\n**From:** \`\`${voiceOld.voiceChannel.name}\`\` (ID: ${voiceOld.voiceChannelID})\n**To:** \`\`${voiceNew.voiceChannel.name}\`\` (ID: ${voiceNew.voiceChannelID})\n**User:** ${voiceOld} (ID: ${voiceOld.id})`)
  591. .setTimestamp()
  592. .setFooter(voiceOld.user.tag, voiceOld.user.avatarURL)
  593.  
  594. logChannel.send(voiceLeave);
  595. }
  596. });
  597.  
  598.  
  599. client.on('message', message => {
  600. if (message.content.startsWith(prefix+"log")) {
  601. var args = message.content.split(" ").slice(1);
  602. var argrst = args.join(' ');
  603. message.guild.createChannel(`${argrst}`,'text')
  604.  
  605. }
  606. });
Advertisement
Add Comment
Please, Sign In to add comment