added all files

This commit is contained in:
DJj123dj
2021-11-14 09:12:55 +01:00
commit 918f5f4243
2793 changed files with 298038 additions and 0 deletions
+248
View File
@@ -0,0 +1,248 @@
const discord = require('discord.js')
const bot = require('../index')
const client = bot.client
const config = require("../config.json")
const ticketStorage = bot.TicketStorage
const userTicketStorage = bot.userTicketStorage
const transcriptStorage = bot.transcriptStorage
var stringDecoder = "Created By "
exports.stringDecoder = stringDecoder
module.exports = () => {
var closeButton = new discord.MessageActionRow()
.addComponents(
new discord.MessageButton()
.setCustomId("closeTicket")
.setDisabled(false)
.setStyle("SECONDARY")
.setLabel("Sluit Ticket")
.setEmoji("❌")
)
client.on("interactionCreate",interaction => {
if (interaction.isButton() == false){
return
}
if (interaction.customId == "newTicketVraag"||interaction.customId == "newTicketSolli"||interaction.customId == "newTicketPartner"){
interaction.deferUpdate()
if (ticketStorage.getItem(interaction.member.id) == null ||ticketStorage.getItem(interaction.member.id) == "false"){
try{
interaction.member.send("**Je ticket is aangemaakt!**")
}
catch{console.log("cant send DM to member")}
ticketStorage.setItem(interaction.member.id,"true")
var ticketNumber = interaction.member.user.username
if (interaction.customId == "newTicketVraag"){
var ticketName = "vraag-"+ticketNumber
}else if (interaction.customId == "newTicketSolli"){
var ticketName = "solli-"+ticketNumber
}else if (interaction.customId == "newTicketPartner"){
var ticketName = "partner-"+ticketNumber
}
var Category = config.ticket_system.ticket_category
interaction.guild.channels.create(ticketName,{
type:"GUILD_TEXT",
parent:Category,
permissionOverwrites:[
{
id:interaction.member.id,
type:"member",
allow:["ADD_REACTIONS","ATTACH_FILES","EMBED_LINKS","SEND_MESSAGES","VIEW_CHANNEL"]
},
{
id:config.botperms_role,
type:"role",
allow:["ADD_REACTIONS","ATTACH_FILES","EMBED_LINKS","SEND_MESSAGES","VIEW_CHANNEL"]
},
{
id:config.ticket_system.member_role,
type:"role",
deny:["VIEW_CHANNEL"]
}
]
}).then(tChannel => {
userTicketStorage.setItem(tChannel.id,interaction.member.id)
var ticketEmbed = new discord.MessageEmbed()
.setColor(config.main_color)
if (interaction.customId == "newTicketVraag"){
ticketEmbed.setDescription("**Ticket gemaakt:**\nJe hebt gekozen voor **overige vragen**, zeg alvast maar je vraag, onze staffleden komen u zo helpen.\n\n_Klik op knop hieronder om dit ticket te sluiten_")
}else if (interaction.customId == "newTicketSolli"){
ticketEmbed.setDescription("**Ticket gemaakt:**\nJe hebt gekozen voor **sollicitatie**, neem maar tijd om u sollicitatie brief voor te bereiden. Met de `!solli` command kan je zien wat je allemaal moet zeggen.\n\n_Klik op knop hieronder om dit ticket te sluiten_")
}else if (interaction.customId == "newTicketPartner"){
ticketEmbed.setDescription("**Ticket gemaakt:**\nJe hebt gekozen voor **partner**, neem maar tijd om u partner brief voor te bereiden. Met de `!partner` command kan je zien wat de vereisen zijn.\n\n_Klik op knop hieronder om dit ticket te sluiten_")
}
tChannel.send({content:"<@"+interaction.member.id+"> <@&"+config.botperms_role+">",embeds:[ticketEmbed],components:[closeButton]}).then(firstmsg => {
firstmsg.pin()
})
})
}else{
try {
interaction.member.send("**Je hebt al een ticket open!**")
}
catch{console.log("cant send DM to member")}
}
}
})
var closeBar = new discord.MessageActionRow()
.addComponents(
new discord.MessageButton()
.setCustomId("closeTicketTrue")
.setDisabled(false)
.setStyle("SECONDARY")
.setEmoji("✅")
)
.addComponents(
new discord.MessageButton()
.setCustomId("closeTicketFalse")
.setDisabled(false)
.setStyle("SECONDARY")
.setEmoji("❌")
)
client.on("interactionCreate",interaction => {
if (interaction.isButton() == false){
return
}
if (interaction.customId == "closeTicket"){
interaction.deferUpdate()
interaction.message.edit({components:[closeBar]})
}
})
client.on("interactionCreate",interaction => {
if (interaction.isButton() == false){
return
}
if (interaction.customId == "closeTicketFalse"){
interaction.deferUpdate()
interaction.message.edit({components:[closeButton]})
}
})
client.on("interactionCreate",interaction => {
if (interaction.isButton() == false){
return
}
if (interaction.customId == "closeTicketTrue"){
interaction.deferUpdate()
interaction.channel.messages.fetch().then(messages => {
var transcriptArray = []
messages.forEach(msg => {
if (msg.author.id != client.user.id){
transcriptArray.push("["+msg.author.username+"]: "+msg.content)
}
})
var getuserID = userTicketStorage.getItem(interaction.channel.id)
var getusernameStep1 = client.users.cache.find(u => u.id === getuserID)
if (getusernameStep1 == null || getusernameStep1 == undefined || getusernameStep1 == false || getusernameStep1 == ""){
var getuserNAME = ":user niet in database:"
}else {
var getuserNAME = getusernameStep1.username
}
var transcript = transcriptArray.reverse().join("\n")
transcriptStorage.setItem(interaction.channel.id,transcript)
var splittedTranscript = [transcript.slice(0,2000)]
if (transcript.length > 4000){
splittedTranscript.push(transcript.slice(2000,4000))
splittedTranscript.push(transcript.slice(4000))
}else if (transcript.length > 2000){
splittedTranscript.push(transcript.slice(2000))
}
var transcriptEmbed = new discord.MessageEmbed()
.setColor(config.main_color)
.setAuthor(interaction.channel.name + " - ticket gemaakt door "+getuserNAME)
.setTitle("Er is een nieuw transcript!")
.setDescription(splittedTranscript[0])
.setFooter("ticket gesloten door "+interaction.member.user.username)
if (transcript.length > 4000){
var transcriptEmbed2 = new discord.MessageEmbed()
.setColor(config.main_color)
.setAuthor(interaction.channel.name + " - ticket gemaakt door "+getuserNAME)
.setTitle("Deel 2 van het transcript")
.setDescription(splittedTranscript[1])
.setFooter("ticket gesloten door "+interaction.member.user.username)
var transcriptEmbed3 = new discord.MessageEmbed()
.setColor(config.main_color)
.setAuthor(interaction.channel.name + " - ticket gemaakt door "+getuserNAME)
.setTitle("Deel 3 van het transcript")
.setDescription(splittedTranscript[1])
.setFooter("ticket gesloten door "+interaction.member.user.username)
client.channels.cache.find(ch => ch.id == config.ticket_system.transcript_channel).send({embeds:[transcriptEmbed,transcriptEmbed2,transcriptEmbed3]})
}else if (transcript.length > 2000){
var transcriptEmbed2 = new discord.MessageEmbed()
.setColor(config.main_color)
.setAuthor(interaction.channel.name + " - ticket gemaakt door "+getuserNAME)
.setTitle("Deel 2 van het transcript")
.setDescription(splittedTranscript[1])
.setFooter("ticket gesloten door "+interaction.member.user.username)
client.channels.cache.find(ch => ch.id == config.ticket_system.transcript_channel).send({embeds:[transcriptEmbed,transcriptEmbed2]})
}else{
client.channels.cache.find(ch => ch.id == config.ticket_system.transcript_channel).send({embeds:[transcriptEmbed]})
}
interaction.channel.delete()
ticketStorage.setItem(getuserID,"false")
try {
interaction.member.send("**Je ticket is gesloten door "+interaction.member.user.username+"!**")
}
catch{console.log("cant send DM to member")}
})
}
})
process.on('unhandledRejection',error => {
console.log("ERROR: "+error)
})
}