Advertisement
Guest User

Untitled

a guest
Oct 19th, 2019
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 20.10 KB | None | 0 0
  1. const http = require('http');
  2. const express = require('express');
  3. const app = express();
  4. app.get("/", (request, response) => {
  5. response.sendStatus(200);
  6. });
  7. app.listen(process.env.PORT);
  8. setInterval(() => {
  9. http.get(`http://ticketybot.glitch.me/`);
  10. }, 280000);
  11.  
  12.  
  13.  
  14. const Discord = require('discord.js');
  15. const {TOKEN,devs} = require('./config')
  16. const client = new Discord.Client({disableEveryone: true});
  17. const prefix = "-";
  18. const fs = require('fs');
  19. const setrole = {}
  20. const setcategory = {}
  21. const setlog = {}
  22. const cmd = require("node-cmd");
  23.  
  24. client.on('ready', () => {
  25. console.log(`Logged in as * [ " WYT | Tickety " ] servers! [ " ${client.guilds.size} " ] Users! [ " ${client.users.size} " ]`);
  26.  
  27. client.user.setStatus("playing");
  28. client.user.setGame(`-help | ${client.guilds.size} servers`);
  29.  
  30. });
  31.  
  32.  
  33. client.on("message", async message => {
  34.  
  35. if(message.content === prefix + "restart") {
  36. const ownerxxx = new Discord.RichEmbed()
  37. .setDescription(`:x: You are not my owner -> <@273750940337831936> is my owner`)
  38. .setColor("22BF41");
  39. if(message.author.id !== "273750940337831936") return message.channel.send(ownerxxx);;
  40. await cmd.run("refresh")
  41. const doneeee = new Discord.RichEmbed()
  42. .setDescription(`:white_check_mark: Done.`)
  43. .setColor("22BF41");
  44. await message.channel.send(doneeee)
  45. }
  46. })
  47.  
  48.  
  49.  
  50.  
  51. function clean(text) {
  52. if (typeof(text) === "string")
  53. return text.replace(/`/g, "`" + String.fromCharCode(8203)).replace(/@/g, "@" + String.fromCharCode(8203));
  54. else
  55. return text;
  56. }
  57.  
  58. client.on("message", async message => {
  59. if(message.content.toLowerCase().startsWith(prefix + `info`)){
  60. const nos = new Discord.RichEmbed()
  61. .setDescription(`:x: This command only for servers`)
  62. .setColor("22BF41");
  63. if(!message.channel.guild) return message.channel.send(nos).then(m => m.delete(5000));
  64.  
  65. const infs = new Discord.RichEmbed()
  66. .setDescription(`This Bot Coded By <@273750940337831936>`)
  67. .setColor("22BF41");
  68. message.channel.send(infs);
  69. }
  70. });
  71.  
  72. client.on("message", async message => {
  73. if(message.content.toLowerCase().startsWith(prefix + `help`)){
  74. const nos = new Discord.RichEmbed()
  75. .setDescription(`:x: This command only for servers`)
  76. .setColor("22BF41");
  77. if(!message.channel.guild) return message.channel.send(nos).then(m => m.delete(5000));
  78.  
  79. const infs = new Discord.RichEmbed()
  80. .setDescription(`\`\`${prefix}new\`\` | create a new ticket\n\n\`\`${prefix}close\`\` | close the ticket\n\n\`\`${prefix}setrole\`\` | set the role of the support team\n\n\`\`${prefix}setcategory\`\` | set the category of tickets`)
  81. .setColor("22BF41");
  82. message.channel.send(infs);
  83. }
  84. });
  85.  
  86.  
  87. client.on("message", async message => {
  88. if(message.content.toLowerCase().startsWith(prefix + `setrole`)){
  89. const nos = new Discord.RichEmbed()
  90. .setDescription(`:x: This command only for servers`)
  91. .setColor("22BF41");
  92. if(!message.channel.guild) return message.channel.send(nos).then(m => m.delete(5000));
  93. if(!setlog[message.guild.id]) setlog[message.guild.id] = {
  94. log: "log"
  95. }
  96. var logChannel = message.guild.channels.find(c => c.name === `${setlog[message.guild.id].log}`);
  97. const log = setlog[message.guild.id].log
  98. const slog = setlog[message.guild.id].log
  99. const logg = new Discord.RichEmbed()
  100. .setDescription(`:x: Please first set the log channel by using \`\`${prefix}setlog <name>\`\``)
  101. .setColor("22BF41");
  102. if(!message.guild.channels.find("name", slog)) return message.channel.send(logg);
  103. if(!setrole[message.guild.id]) setrole[message.guild.id] = {
  104. role: "Support Team"
  105. }
  106. const role = setrole[message.guild.id].role
  107. let newrole = message.content.split(' ').slice(1).join(' ');
  108. let thisrole = message.guild.roles.find('name', newrole);
  109. let permission = message.guild.member(message.author).hasPermissions('ADMINISTRATOR');
  110. const d11x1x42x = new Discord.RichEmbed()
  111. .setDescription(`:x: You do not have permission for that command! If you believe this is a mistake please add a high role has \`\`ADMINISTRATOR\`\` permission to yourself.`)
  112. .setColor("22BF41");
  113. if(!permission) return message.channel.send(d11x1x42x);
  114. const NOTX1 = new Discord.RichEmbed()
  115. .setDescription(`:x: Usage: \`\`${prefix}setrole <name>\`\``)
  116. .setColor("22BF41");
  117. if(!newrole) return message.channel.send(NOTX1);
  118. const CANT = new Discord.RichEmbed()
  119. .setDescription(`:x: I can't find this role \`\`${newrole}\`\``)
  120. .setColor("22BF41");
  121. if(!thisrole) return message.channel.send(CANT);
  122.  
  123. setrole[message.guild.id].role = newrole
  124. const D1 = new Discord.RichEmbed()
  125. .setDescription(`:white_check_mark: The tickets role has been set to \`\`${newrole}\`\``)
  126. .setColor("22BF41");
  127. message.channel.send(D1);
  128. const loggerrr = new Discord.RichEmbed()
  129. .setTitle('**[SET TICKETS ROLE]**')
  130. .setColor('22BF41')
  131. .setThumbnail(message.author.avatarURL)
  132. .setDescription(`**\n**:white_check_mark: Successfully \`\`TICKETS ROLE\`\` **HAS BEEN CHANGED**\n\n**To:** ${newrole}\n**By:** <@${message.author.id}> (ID: ${message.author.id})`)
  133. .setTimestamp()
  134. .setFooter(`WYT || By Sw3rD#6149` , client.user.avatarURL)
  135.  
  136. logChannel.send(loggerrr);
  137.  
  138.  
  139. }
  140. });
  141.  
  142. client.on("message", async message => {
  143. if(message.content.toLowerCase().startsWith(prefix + `setcategory`)){
  144. const nos = new Discord.RichEmbed()
  145. .setDescription(`:x: This command only for servers`)
  146. .setColor("22BF41");
  147. if(!message.channel.guild) return message.channel.send(nos).then(m => m.delete(5000));
  148. if(!setlog[message.guild.id]) setlog[message.guild.id] = {
  149. log: "log"
  150. }
  151. var logChannel = message.guild.channels.find(c => c.name === `${setlog[message.guild.id].log}`);
  152. const log = setlog[message.guild.id].log
  153. const slog = setlog[message.guild.id].log
  154. const logg = new Discord.RichEmbed()
  155. .setDescription(`:x: Please first set the log channel by using \`\`${prefix}setlog <name>\`\``)
  156. .setColor("22BF41");
  157. if(!message.guild.channels.find("name", slog)) return message.channel.send(logg);
  158. if(!setcategory[message.guild.id]) setcategory[message.guild.id] = {
  159. category: "Tickets"
  160. }
  161. const category = setcategory[message.guild.id].category
  162. let newcategory = message.content.split(' ').slice(1).join(' ');
  163. let thiscategory = message.guild.channels.find("name", newcategory);
  164.  
  165. let permission = message.guild.member(message.author).hasPermissions('ADMINISTRATOR');
  166. const d11x1x42x = new Discord.RichEmbed()
  167. .setDescription(`:x: You do not have permission for that command! If you believe this is a mistake please add a high role has \`\`ADMINISTRATOR\`\` permission to yourself.`)
  168. .setColor("22BF41");
  169. if(!permission) return message.channel.send(d11x1x42x);
  170. const NOTX1 = new Discord.RichEmbed()
  171. .setDescription(`:x: Usage: \`\`${prefix}setcategory <name>\`\``)
  172. .setColor("22BF41");
  173. if(!newcategory) return message.channel.send(NOTX1);
  174. const CANT = new Discord.RichEmbed()
  175. .setDescription(`:x: I can't find this category \`\`${newcategory}\`\``)
  176. .setColor("22BF41");
  177. if(!thiscategory) return message.channel.send(CANT);
  178.  
  179. const N00TREALY = new Discord.RichEmbed()
  180. .setDescription(`:x: This is not a category \`\`${newcategory}\`\``)
  181. .setColor("22BF41");
  182. if(thiscategory.type !== "category") return message.channel.send(N00TREALY);
  183.  
  184. setcategory[message.guild.id].category = newcategory
  185. const D1 = new Discord.RichEmbed()
  186. .setDescription(`:white_check_mark: The tickets category has been set to \`\`${newcategory}\`\``)
  187. .setColor("22BF41");
  188. message.channel.send(D1);
  189. const loggerrr = new Discord.RichEmbed()
  190. .setTitle('**[SET TICKETS CATEGORY]**')
  191. .setColor('22BF41')
  192. .setThumbnail(message.author.avatarURL)
  193. .setDescription(`**\n**:white_check_mark: Successfully \`\`TICKETS CATEGORY\`\` **HAS BEEN CHANGED**\n\n**To:** ${newcategory}\n**By:** <@${message.author.id}> (ID: ${message.author.id})`)
  194. .setTimestamp()
  195. .setFooter(`WYT || By Sw3rD#6149` , client.user.avatarURL)
  196.  
  197. logChannel.send(loggerrr);
  198.  
  199.  
  200. }
  201. });
  202.  
  203. client.on("message", async message => {
  204. if(message.content.toLowerCase().startsWith(prefix + `setlog`)){
  205. const nos = new Discord.RichEmbed()
  206. .setDescription(`:x: This command only for servers`)
  207. .setColor("22BF41");
  208. if(!message.channel.guild) return message.channel.send(nos).then(m => m.delete(5000));
  209. if(!setlog[message.guild.id]) setlog[message.guild.id] = {
  210. log: "log"
  211. }
  212. const log = setlog[message.guild.id].log
  213. let newlog = message.content.split(' ').slice(1).join(' ');
  214. let thislog = message.guild.channels.find("name", newlog);
  215.  
  216. let permission = message.guild.member(message.author).hasPermissions('ADMINISTRATOR');
  217. const d11x1x42x = new Discord.RichEmbed()
  218. .setDescription(`:x: You do not have permission for that command! If you believe this is a mistake please add a high role has \`\`ADMINISTRATOR\`\` permission to yourself.`)
  219. .setColor("22BF41");
  220. if(!permission) return message.channel.send(d11x1x42x);
  221. const NOTX1 = new Discord.RichEmbed()
  222. .setDescription(`:x: Usage: \`\`${prefix}setlog <name>\`\``)
  223. .setColor("22BF41");
  224. if(!newlog) return message.channel.send(NOTX1);
  225. const CANT = new Discord.RichEmbed()
  226. .setDescription(`:x: I can't find this channel \`\`${newlog}\`\``)
  227. .setColor("22BF41");
  228. if(!thislog) return message.channel.send(CANT);
  229.  
  230. const N00TREALY = new Discord.RichEmbed()
  231. .setDescription(`:x: This is not a channel \`\`${newlog}\`\``)
  232. .setColor("22BF41");
  233. if(thislog.type !== "text") return message.channel.send(N00TREALY);
  234.  
  235. setlog[message.guild.id].log = newlog
  236. const D1 = new Discord.RichEmbed()
  237. .setDescription(`:white_check_mark: The tickets log has been set to \`\`${newlog}\`\``)
  238. .setColor("22BF41");
  239. message.channel.send(D1);
  240.  
  241. }
  242. });
  243.  
  244.  
  245.  
  246. client.on("message", async message => {
  247.  
  248. if(message.content.toLowerCase().startsWith(prefix + `new`)) {
  249. const nos = new Discord.RichEmbed()
  250. .setDescription(`:x: This command only for servers`)
  251. .setColor("22BF41");
  252. if(!message.channel.guild) return message.channel.send(nos).then(m => m.delete(5000));
  253. if(!setrole[message.guild.id]) setrole[message.guild.id] = {
  254. role: "Support Team"
  255. }
  256. const role = setrole[message.guild.id].role
  257. const srole = setrole[message.guild.id].role
  258. let thisrole = message.guild.roles.find('name', srole);
  259.  
  260. const rerole = new Discord.RichEmbed()
  261. .setDescription(`:x: Please first make a role called exactly \`\`${srole}\`\``)
  262. .setColor("22BF41");
  263. if (!thisrole) return message.channel.send(rerole);
  264.  
  265.  
  266. if(!setcategory[message.guild.id]) setcategory[message.guild.id] = {
  267. category: "Tickets"
  268. }
  269. const category = setcategory[message.guild.id].category
  270. const scategory = setcategory[message.guild.id].category
  271. let thiscategory = message.guild.channels.find('name', scategory);
  272. const categoryyyyy = new Discord.RichEmbed()
  273. .setDescription(":x: Please first make a category named \`\`Tickets\`\` or set your category by \`\`-setcategory <name>\`\`")
  274. .setColor("22BF41");
  275. if(!message.guild.channels.find("name", scategory)) return message.channel.send(categoryyyyy);
  276. if(!setlog[message.guild.id]) setlog[message.guild.id] = {
  277. log: "log"
  278. }
  279. var logChannel = message.guild.channels.find(c => c.name === `${setlog[message.guild.id].log}`);
  280. const log = setlog[message.guild.id].log
  281. const slog = setlog[message.guild.id].log
  282. const logg = new Discord.RichEmbed()
  283. .setDescription(`:x: Please first set the log channel by using \`\`${prefix}setlog <name>\`\``)
  284. .setColor("22BF41");
  285. if(!message.guild.channels.find("name", slog)) return message.channel.send(logg);
  286. if(!setcategory[message.guild.id]) setcategory[message.guild.id] = {
  287. category: "Tickets"
  288. }
  289. let subject = message.content.split(' ').slice(1).join(' ');
  290. if(!subject[0]){
  291.  
  292. const rerole = new Discord.RichEmbed()
  293. .setDescription(`:x: Please first make a role called exactly \`\`${srole}\`\``)
  294. .setColor("22BF41");
  295. if (!thisrole) return message.channel.send(rerole);
  296.  
  297. const already = new Discord.RichEmbed()
  298. .setDescription(":x: You can only have \`\`1\`\` ticket in this server! you already have \`\`1\`\`")
  299. .setColor("22BF41");
  300. if (message.channel.name.startsWith(`ticket-${message.author.discriminator}`)) return message.channel.send(already);
  301. if (message.channel.name.startsWith("ticket-" + message.author.discriminator)) return message.channel.send(already);
  302. if (message.guild.channels.exists("name", `ticket-${message.author.discriminator}`)) return message.channel.send(already);
  303. if (message.guild.channels.exists("name", "ticket-" + message.author.discriminator)) return message.channel.send(already);
  304.  
  305. message.guild.createChannel(`ticket-${message.author.discriminator}`, "text").then(ticketx => {
  306. const loggerrr = new Discord.RichEmbed()
  307. .setTitle('**[NEW TICKET]**')
  308. .setColor('22BF41')
  309. .setThumbnail(message.author.avatarURL)
  310. .setDescription(`**\n**:white_check_mark: Successfully \`\`NEW TICKET\`\` **CREATED**\n\n**Ticket ID:** ticket-${message.author.discriminator}\n**Created By:** <@${message.author.id}> (ID: ${message.author.id})\n**Subject:**\n\`\`\`No subject has been given
  311. \`\`\``)
  312. .setTimestamp()
  313. .setFooter(`WYT || By Sw3rD#6149` , client.user.avatarURL)
  314.  
  315. logChannel.send(loggerrr);
  316. ticketx.setParent(thiscategory.id);
  317. let role = message.guild.roles.find("name", srole);
  318. let role2 = message.guild.roles.find("name", "@everyone");
  319. ticketx.overwritePermissions(role, {
  320. SEND_MESSAGES: true,
  321. READ_MESSAGES: true
  322. });
  323. ticketx.overwritePermissions(role2, {
  324. SEND_MESSAGES: false,
  325. READ_MESSAGES: false
  326. });
  327. ticketx.overwritePermissions(message.author, {
  328. SEND_MESSAGES: true,
  329. READ_MESSAGES: true
  330.  
  331. });
  332.  
  333.  
  334. const d1 = new Discord.RichEmbed()
  335. .setDescription(`:white_check_mark: Your ticket has been created <#${ticketx.id}>`)
  336. .setColor("22BF41")
  337. message.channel.send(d1);
  338. const nonedear = new Discord.RichEmbed()
  339. .setDescription(`Dear ${message.author}, \n\nThank you for reaching out to our support team!\n\nWe will get back to you as soon as possible\n\n`)
  340. .addField('Subject' , `No subject has been given`)
  341. .setColor("22BF41")
  342. .setFooter(`WYT || By Sw3rD#6149` , client.user.avatarURL)
  343. .setTimestamp();
  344. ticketx.send({embed: nonedear });
  345. }).catch(console.error);
  346.  
  347. }
  348.  
  349. if(subject[0]){
  350. const already = new Discord.RichEmbed()
  351. .setDescription(":x: You can only have \`\`1\`\` ticket in this server! you already have \`\`1\`\`")
  352. .setColor("22BF41");
  353. if (message.channel.name.startsWith(`ticket-${message.author.discriminator}`)) return message.channel.send(already);
  354. if (message.channel.name.startsWith("ticket-" + message.author.discriminator)) return message.channel.send(already);
  355. if (message.guild.channels.exists("name", `ticket-${message.author.discriminator}`)) return message.channel.send(already);
  356. if (message.guild.channels.exists("name", "ticket-" + message.author.discriminator)) return message.channel.send(already);
  357. message.guild.createChannel(`ticket-${message.author.discriminator}`, "text").then(ticketx => {
  358. const loggerrr = new Discord.RichEmbed()
  359. .setTitle('**[NEW TICKET]**')
  360. .setColor('22BF41')
  361. .setThumbnail(message.author.avatarURL)
  362. .setDescription(`**\n**:white_check_mark: Successfully \`\`NEW TICKET\`\` **CREATED**\n\n**Ticket ID:** ticket-${message.author.discriminator}\n**Created By:** <@${message.author.id}> (ID: ${message.author.id})\n**Subject:**\n\`\`\`${subject}\`\`\``)
  363. .setTimestamp()
  364. .setFooter(`WYT || By Sw3rD#6149` , client.user.avatarURL)
  365.  
  366. logChannel.send(loggerrr);
  367. ticketx.setParent(thiscategory.id);
  368. let role = message.guild.roles.find("name", srole);
  369. let role2 = message.guild.roles.find("name", "@everyone");
  370. ticketx.overwritePermissions(role, {
  371. SEND_MESSAGES: true,
  372. READ_MESSAGES: true
  373. });
  374. ticketx.overwritePermissions(role2, {
  375. SEND_MESSAGES: false,
  376. READ_MESSAGES: false
  377. });
  378. ticketx.overwritePermissions(message.author, {
  379. SEND_MESSAGES: true,
  380. READ_MESSAGES: true
  381.  
  382. });
  383.  
  384. const d1 = new Discord.RichEmbed()
  385. .setDescription(`:white_check_mark: Your ticket has been created <#${ticketx.id}>`)
  386. .setColor("22BF41")
  387. message.channel.send(d1);
  388. const nonedear = new Discord.RichEmbed()
  389. .setDescription(`Dear ${message.author}, \n\nThank you for reaching out to our support team!\n\nWe will get back to you as soon as possible\n\n`)
  390. .addField('Subject' , subject)
  391. .setColor("22BF41")
  392. .setFooter(`WYT || By Sw3rD#6149` , client.user.avatarURL)
  393. .setTimestamp();
  394. ticketx.send({embed: nonedear });
  395. }).catch(console.error);
  396.  
  397. }
  398. }
  399.  
  400.  
  401.  
  402.  
  403. if(message.content.toLowerCase().startsWith(prefix + `close`)) {
  404. const role = setrole[message.guild.id].role
  405. const srole = setrole[message.guild.id].role
  406. var logChannel = message.guild.channels.find(c => c.name === `${setlog[message.guild.id].log}`);
  407. const nos = new Discord.RichEmbed()
  408. .setDescription(`:x: This command only for servers`)
  409. .setColor("22BF41");
  410. if(!message.channel.guild) return message.channel.send(nos).then(m => m.delete(5000));
  411.  
  412. let team = message.member.roles.find("name", srole);
  413. const d11x1xx = new Discord.RichEmbed()
  414. .setDescription(`:x: You do not have permission for that command! If you believe this is a mistake please add the role called \`\`${srole}\`\` to yourself.`)
  415. .setColor("22BF41");
  416. if(!team) return message.channel.send(d11x1xx);
  417. const d11x1xxNOT = new Discord.RichEmbed()
  418. .setDescription(":x: You only can run this command in a ticket channel!")
  419. .setColor("22BF41");
  420. if (!message.channel.name.startsWith("ticket-")) return message.channel.send(d11x1xxNOT);
  421. const yes = new Discord.RichEmbed()
  422. .setDescription(`:x: Are you sure you want close this ticket? The messages will be gone\nsend \`\`${prefix}close\`\` again to close the ticket.\nYour request will be voided in 20 seconds.`)
  423. .setColor("22BF41");
  424.  
  425. message.channel.send(yes)
  426. .then((m) => {
  427. message.channel.awaitMessages(response => response.content === '-close', {
  428. max: 1,
  429. time: 20000,
  430. errors: ['time'],
  431.  
  432.  
  433. })
  434.  
  435. .then((collected) => {
  436. message.channel.delete();
  437. const loggerrr = new Discord.RichEmbed()
  438. .setTitle('**[CLOSED TICKET]**')
  439. .setColor('FF0000')
  440. .setThumbnail(message.author.avatarURL)
  441. .setDescription(`**\n**:wastebasket: Successfully \`\`TICKET\`\` **HAS BEEN CLOSED**\n\n**Ticket ID:** ${message.channel.name}\n**Closed By:** <@${message.author.id}> (ID: ${message.author.id})`)
  442. .setTimestamp()
  443. .setFooter(`WYT || By Sw3rD#6149` , client.user.avatarURL)
  444.  
  445. logChannel.send(loggerrr);
  446. })
  447.  
  448.  
  449.  
  450.  
  451. .catch(() => {
  452. const yesw = new Discord.RichEmbed()
  453. .setDescription(`:x: Ticket close timed out, the ticket was not closed.`)
  454. .setColor("22BF41");
  455. m.edit(yesw).then(m2 => {
  456. m2.delete();
  457. }, 7000);
  458. });
  459. });
  460.  
  461.  
  462. }
  463.  
  464. });
  465.  
  466.  
  467. // Toxic Codes
  468.  
  469.  
  470. // All copyright for Toxic Codes
  471.  
  472. // This bot coded from Toxic Codes Special code you will never see a codes like this in github
  473.  
  474. client.login(TOKEN);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement