242 lines
11 KiB
JavaScript
242 lines
11 KiB
JavaScript
const discord = require('discord.js')
|
|
const bot = require('../index')
|
|
const client = bot.client
|
|
const config = require("../config.json")
|
|
|
|
|
|
module.exports = () => {
|
|
client.on("messageCreate", msg => {
|
|
if (msg.content == config.prefix+"ticket msg"){
|
|
if (msg.member.roles.cache.has(config.botperms_role) == false){
|
|
msg.channel.send({content:config.messages.general.nopermissions})
|
|
return
|
|
}
|
|
|
|
var currentTicketButtons = 0
|
|
var ticketButton = new discord.MessageActionRow()
|
|
var ticketButton2 = new discord.MessageActionRow()
|
|
|
|
const getColor = (color) => {
|
|
if (color.toLowerCase() == "red"){
|
|
return "DANGER"
|
|
}else if (color.toLowerCase() == "green"){
|
|
return "SUCCESS"
|
|
}else if (color.toLowerCase() == "blue" || color.toLowerCase() == "blurple"){
|
|
return "PRIMARY"
|
|
}else if (color.toLowerCase() == "black" || color.toLowerCase() == "gray" || color.toLowerCase() == "grey"){
|
|
return "SECONDARY"
|
|
}else if (color == "DANGER" || color == "SECONDARY" || color == "SUCCESS" || color == "PRIMARY"){
|
|
return color
|
|
}else if (color.toLowerCase() == "none" || color.toLowerCase() == "false" || color.toLowerCase() == ""){
|
|
return "SECONDARY"
|
|
}else return "SECONDARY"
|
|
}
|
|
|
|
if (config.options.ticket1.enabled){
|
|
if (currentTicketButtons < 4){
|
|
var localTicketButton = ticketButton
|
|
}else{
|
|
var localTicketButton = ticketButton2
|
|
}
|
|
|
|
currentTicketButtons = currentTicketButtons + 1
|
|
|
|
if (config.options.ticket1.isURL == false){
|
|
localTicketButton.addComponents(
|
|
new discord.MessageButton()
|
|
.setCustomId("newTicket1")
|
|
.setDisabled(false)
|
|
.setStyle(getColor(config.options.ticket1.color))
|
|
.setEmoji(config.options.ticket1.icon)
|
|
)
|
|
}else{
|
|
localTicketButton.addComponents(
|
|
new discord.MessageButton()
|
|
.setDisabled(false)
|
|
.setStyle("LINK")
|
|
.setEmoji(config.options.ticket1.icon)
|
|
.setURL(config.options.ticket1.url)
|
|
)
|
|
}
|
|
}
|
|
if (config.options.ticket2.enabled){
|
|
if (currentTicketButtons < 4){
|
|
var localTicketButton = ticketButton
|
|
}else{
|
|
var localTicketButton = ticketButton2
|
|
}
|
|
|
|
currentTicketButtons = currentTicketButtons + 1
|
|
|
|
if (config.options.ticket2.isURL == false){
|
|
localTicketButton.addComponents(
|
|
new discord.MessageButton()
|
|
.setCustomId("newTicket2")
|
|
.setDisabled(false)
|
|
.setStyle(getColor(config.options.ticket2.color))
|
|
.setEmoji(config.options.ticket2.icon)
|
|
)
|
|
}else{
|
|
localTicketButton.addComponents(
|
|
new discord.MessageButton()
|
|
.setDisabled(false)
|
|
.setStyle("LINK")
|
|
.setEmoji(config.options.ticket2.icon)
|
|
.setURL(config.options.ticket2.url)
|
|
)
|
|
}
|
|
}
|
|
|
|
if (config.options.ticket3.enabled){
|
|
if (currentTicketButtons < 4){
|
|
var localTicketButton = ticketButton
|
|
}else{
|
|
var localTicketButton = ticketButton2
|
|
}
|
|
|
|
currentTicketButtons = currentTicketButtons + 1
|
|
|
|
if (config.options.ticket3.isURL == false){
|
|
localTicketButton.addComponents(
|
|
new discord.MessageButton()
|
|
.setCustomId("newTicket3")
|
|
.setDisabled(false)
|
|
.setStyle(getColor(config.options.ticket3.color))
|
|
.setEmoji(config.options.ticket3.icon)
|
|
)
|
|
}else{
|
|
localTicketButton.addComponents(
|
|
new discord.MessageButton()
|
|
.setDisabled(false)
|
|
.setStyle("LINK")
|
|
.setEmoji(config.options.ticket3.icon)
|
|
.setURL(config.options.ticket3.url)
|
|
)
|
|
}
|
|
}
|
|
|
|
if (config.options.ticket4.enabled){
|
|
if (currentTicketButtons < 4){
|
|
var localTicketButton = ticketButton
|
|
}else{
|
|
var localTicketButton = ticketButton2
|
|
}
|
|
|
|
currentTicketButtons = currentTicketButtons + 1
|
|
|
|
if (config.options.ticket4.isURL == false){
|
|
localTicketButton.addComponents(
|
|
new discord.MessageButton()
|
|
.setCustomId("newTicket4")
|
|
.setDisabled(false)
|
|
.setStyle(getColor(config.options.ticket4.color))
|
|
.setEmoji(config.options.ticket4.icon)
|
|
)
|
|
}else{
|
|
localTicketButton.addComponents(
|
|
new discord.MessageButton()
|
|
.setDisabled(false)
|
|
.setStyle("LINK")
|
|
.setEmoji(config.options.ticket4.icon)
|
|
.setURL(config.options.ticket4.url)
|
|
)
|
|
}
|
|
}
|
|
|
|
if (config.options.ticket5.enabled){
|
|
if (currentTicketButtons < 4){
|
|
var localTicketButton = ticketButton
|
|
}else{
|
|
var localTicketButton = ticketButton2
|
|
}
|
|
|
|
currentTicketButtons = currentTicketButtons + 1
|
|
|
|
if (config.options.ticket5.isURL == false){
|
|
localTicketButton.addComponents(
|
|
new discord.MessageButton()
|
|
.setCustomId("newTicket5")
|
|
.setDisabled(false)
|
|
.setStyle(getColor(config.options.ticket5.color))
|
|
.setEmoji(config.options.ticket5.icon)
|
|
)
|
|
}else{
|
|
localTicketButton.addComponents(
|
|
new discord.MessageButton()
|
|
.setDisabled(false)
|
|
.setStyle("LINK")
|
|
.setEmoji(config.options.ticket5.icon)
|
|
.setURL(config.options.ticket5.url)
|
|
)
|
|
}
|
|
}
|
|
|
|
if (config.options.ticket6.enabled){
|
|
if (currentTicketButtons < 4){
|
|
var localTicketButton = ticketButton
|
|
}else{
|
|
var localTicketButton = ticketButton2
|
|
}
|
|
|
|
currentTicketButtons = currentTicketButtons + 1
|
|
|
|
if (config.options.ticket6.isURL == false){
|
|
localTicketButton.addComponents(
|
|
new discord.MessageButton()
|
|
.setCustomId("newTicket6")
|
|
.setDisabled(false)
|
|
.setStyle(getColor(config.options.ticket6.color))
|
|
.setEmoji(config.options.ticket6.icon)
|
|
)
|
|
}else{
|
|
localTicketButton.addComponents(
|
|
new discord.MessageButton()
|
|
.setDisabled(false)
|
|
.setStyle("LINK")
|
|
.setEmoji(config.options.ticket6.icon)
|
|
.setURL(config.options.ticket6.url)
|
|
)
|
|
}
|
|
}
|
|
|
|
var categorylist = ""
|
|
if (config.options.ticket1.enabled){categorylist = categorylist+"\n"+config.options.ticket1.icon+": **"+config.options.ticket1.name+"**\n"+config.options.ticket1.description}
|
|
|
|
if (config.options.ticket2.enabled){categorylist = categorylist+"\n\n"+config.options.ticket2.icon+": **"+config.options.ticket2.name+"**\n"+config.options.ticket2.description}
|
|
|
|
if (config.options.ticket3.enabled){categorylist = categorylist+"\n\n"+config.options.ticket3.icon+": **"+config.options.ticket3.name+"**\n"+config.options.ticket3.description}
|
|
|
|
if (config.options.ticket4.enabled){categorylist = categorylist+"\n\n"+config.options.ticket4.icon+": **"+config.options.ticket4.name+"**\n"+config.options.ticket4.description}
|
|
|
|
if (config.options.ticket5.enabled){categorylist = categorylist+"\n\n"+config.options.ticket5.icon+": **"+config.options.ticket5.name+"**\n"+config.options.ticket5.description}
|
|
|
|
if (config.options.ticket6.enabled){categorylist = categorylist+"\n\n"+config.options.ticket6.icon+": **"+config.options.ticket6.name+"**\n"+config.options.ticket6.description}
|
|
|
|
|
|
|
|
var ticketEmbed = new discord.MessageEmbed()
|
|
if (config.layout.ticketMsg.customColorEnabled){
|
|
ticketEmbed.setColor(config.layout.ticketMsg.customColor)
|
|
}else{ticketEmbed.setColor(config.main_color)}
|
|
|
|
if (config.layout.ticketMsg.footerEnabled){
|
|
ticketEmbed.setFooter({text:config.layout.ticketMsg.footer})
|
|
}
|
|
if (config.layout.ticketMsg.thumbnailEnabled){
|
|
ticketEmbed.setThumbnail(config.layout.ticketMsg.thumbnailURL)
|
|
}
|
|
|
|
ticketEmbed.setDescription("**Create a ticket:**\nClick one of the buttons below to create a ticket.\n\n__choose a category:__"+categorylist+"\n\n**watch out:**_You can only create "+config.system.max_allowed_tickets+" ticket(s) at a time!_")
|
|
|
|
|
|
if (currentTicketButtons <= 4){
|
|
var embedComponents = [ticketButton]
|
|
}else{var embedComponents = [ticketButton,ticketButton2]}
|
|
|
|
msg.channel.send({embeds:[ticketEmbed],components:embedComponents})
|
|
|
|
if (config.logs){console.log("[command] "+config.prefix+"ticket msg (user:"+msg.author.username+")")}
|
|
if (config.logs){console.log("[system] created ticket message")}
|
|
}
|
|
})
|
|
} |