v2.3.1 push 1
This commit is contained in:
Regular → Executable
+16
-8
@@ -41,6 +41,7 @@ exports.closeTicket = async (interaction,prefix,mode) => {
|
||||
}
|
||||
|
||||
var enableTranscript = true
|
||||
var deleteRequired = false
|
||||
|
||||
if (mode == "delete"){
|
||||
const permsmember = client.guilds.cache.find(g => g.id == interaction.guild.id).members.cache.find(m => m.id == interaction.member.id)
|
||||
@@ -48,8 +49,8 @@ exports.closeTicket = async (interaction,prefix,mode) => {
|
||||
interaction.channel.send({embeds:[bot.errorLog.noPermsMessage]})
|
||||
return
|
||||
}
|
||||
|
||||
interaction.channel.delete()
|
||||
deleteRequired = true
|
||||
interaction.channel.send({content:"**"+l.messages.gettingdeleted+"**"})
|
||||
log("system","deleted a ticket",[{key:"user",value:interaction.user.tag},{key:"ticket",value:interaction.channel.name}])
|
||||
|
||||
if (!isDatabaseError) storage.set("ticketStorage",getuserID,Number(storage.get("ticketStorage",getuserID)) - 1)
|
||||
@@ -84,17 +85,19 @@ exports.closeTicket = async (interaction,prefix,mode) => {
|
||||
}
|
||||
|
||||
var permissionArray = []
|
||||
const pfb = discord.PermissionFlagsBits
|
||||
|
||||
if (!isDatabaseError) permissionArray.push({
|
||||
id:getusernameStep1.id,
|
||||
id:getusernameStep1,
|
||||
type:"member",
|
||||
allow:["VIEW_CHANNEL"],
|
||||
deny:["ADD_REACTIONS","ATTACH_FILES","EMBED_LINKS","SEND_MESSAGES"]
|
||||
allow:[pfb.ViewChannel],
|
||||
deny:[pfb.AddReactions,pfb.AttachFiles,pfb.EmbedLinks,pfb.SendMessages]
|
||||
})
|
||||
|
||||
permissionArray.push({
|
||||
id:interaction.guild.id,
|
||||
id:interaction.guild.roles.everyone,
|
||||
type:"role",
|
||||
deny:["ADD_REACTIONS","ATTACH_FILES","EMBED_LINKS","SEND_MESSAGES","VIEW_CHANNEL"]
|
||||
deny:[pfb.AddReactions,pfb.AttachFiles,pfb.EmbedLinks,pfb.SendMessages,pfb.ViewChannel]
|
||||
})
|
||||
|
||||
interaction.channel.permissionOverwrites.set(permissionArray)
|
||||
@@ -162,7 +165,8 @@ exports.closeTicket = async (interaction,prefix,mode) => {
|
||||
}
|
||||
|
||||
enableTranscript = false
|
||||
interaction.channel.delete()
|
||||
deleteRequired = true
|
||||
interaction.channel.send({content:"**"+l.messages.gettingdeleted+"**"})
|
||||
log("system","deleted a ticket",[{key:"user",value:interaction.user.tag},{key:"ticket",value:interaction.channel.name}])
|
||||
|
||||
if (!isDatabaseError) storage.set("ticketStorage",getuserID,Number(storage.get("ticketStorage",getuserID)) - 1)
|
||||
@@ -222,6 +226,10 @@ exports.closeTicket = async (interaction,prefix,mode) => {
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
if (deleteRequired){
|
||||
interaction.channel.delete()
|
||||
}
|
||||
}
|
||||
|
||||
exports.runThis = () => {
|
||||
|
||||
Regular → Executable
+48
-26
@@ -44,6 +44,7 @@ module.exports = () => {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (getconfigoptions.getTicketValues("id").includes(customId)){
|
||||
|
||||
@@ -67,7 +68,6 @@ module.exports = () => {
|
||||
}
|
||||
catch{log("system","can't send DM to member, member doesn't allow dm's")}
|
||||
|
||||
|
||||
|
||||
//update storage
|
||||
storage.set("ticketStorage",interaction.member.id,Number(storage.get("ticketStorage",interaction.member.id))+1)
|
||||
@@ -85,17 +85,19 @@ module.exports = () => {
|
||||
}
|
||||
|
||||
var permissionsArray = []
|
||||
const pfb = discord.PermissionFlagsBits
|
||||
const guild = client.guilds.cache.find(g => g.id == interaction.guild.id)
|
||||
|
||||
//set everyone allowed
|
||||
if (config.system['has@everyoneaccess']){
|
||||
var everyoneAllowPerms = ["ADD_REACTIONS","ATTACH_FILES","EMBED_LINKS","SEND_MESSAGES","VIEW_CHANNEL"]
|
||||
var everyoneAllowPerms = [pfb.AddReactions,pfb.AttachFiles,pfb.EmbedLinks,pfb.SendMessages,pfb.ViewChannel]
|
||||
var everyoneDenyPerms = []
|
||||
}else{
|
||||
var everyoneAllowPerms = []
|
||||
var everyoneDenyPerms = ["VIEW_CHANNEL"]
|
||||
var everyoneDenyPerms = [pfb.ViewChannel]
|
||||
}
|
||||
permissionsArray.push({
|
||||
id:interaction.guild.id,
|
||||
id:interaction.guild.roles.everyone,
|
||||
type:"role",
|
||||
allow:everyoneAllowPerms,
|
||||
deny:everyoneDenyPerms
|
||||
@@ -103,18 +105,25 @@ module.exports = () => {
|
||||
|
||||
//add the user that created the ticket
|
||||
permissionsArray.push({
|
||||
id:interaction.member.id,
|
||||
id:interaction.member.user,
|
||||
type:"member",
|
||||
allow:["ADD_REACTIONS","ATTACH_FILES","EMBED_LINKS","SEND_MESSAGES","VIEW_CHANNEL"]
|
||||
allow:[pfb.AddReactions,pfb.AttachFiles,pfb.EmbedLinks,pfb.SendMessages,pfb.ViewChannel]
|
||||
})
|
||||
|
||||
//add main adminroles
|
||||
config.main_adminroles.forEach((role) => {
|
||||
permissionsArray.push({
|
||||
id:role,
|
||||
type:"role",
|
||||
allow:["ADD_REACTIONS","ATTACH_FILES","EMBED_LINKS","SEND_MESSAGES","VIEW_CHANNEL"]
|
||||
})
|
||||
config.main_adminroles.forEach((role,index) => {
|
||||
try {
|
||||
const adminrole = guild.roles.cache.find(r => r.id == role)
|
||||
if (!adminrole) return
|
||||
|
||||
permissionsArray.push({
|
||||
id:adminrole,
|
||||
type:"role",
|
||||
allow:[pfb.AddReactions,pfb.AttachFiles,pfb.EmbedLinks,pfb.SendMessages,pfb.ViewChannel]
|
||||
})
|
||||
}catch{
|
||||
log("system","invalid role! At 'config.json => main_adminroles:"+index)
|
||||
}
|
||||
})
|
||||
|
||||
//add ticket adminroles
|
||||
@@ -122,29 +131,42 @@ module.exports = () => {
|
||||
* @type {String[]}
|
||||
*/
|
||||
const ticketadmin = currentTicketOptions.adminroles
|
||||
ticketadmin.forEach((role) => {
|
||||
ticketadmin.forEach((role,index) => {
|
||||
if (!config.main_adminroles.includes(role)){
|
||||
permissionsArray.push({
|
||||
id:role,
|
||||
type:"role",
|
||||
allow:["ADD_REACTIONS","ATTACH_FILES","EMBED_LINKS","SEND_MESSAGES","VIEW_CHANNEL"]
|
||||
})
|
||||
try {
|
||||
const adminrole = guild.roles.cache.find(r => r.id == role)
|
||||
if (!adminrole) return
|
||||
|
||||
permissionsArray.push({
|
||||
id:adminrole,
|
||||
type:"role",
|
||||
allow:[pfb.AddReactions,pfb.AttachFiles,pfb.EmbedLinks,pfb.SendMessages,pfb.ViewChannel]
|
||||
})
|
||||
}catch{
|
||||
log("system","invalid role! At 'config.json => options/ticket/...:"+index)
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
//add member role
|
||||
if (config.system.member_role != "" && config.system.member_role != " " && config.system.member_role != "false" && config.system.member_role != "null" && config.system.member_role != "0"){
|
||||
permissionsArray.push({
|
||||
id:config.system.member_role,
|
||||
type:"role",
|
||||
deny:["VIEW_CHANNEL"]
|
||||
})
|
||||
try {
|
||||
const userrole = guild.roles.cache.find(r => r.id == config.system.member_role)
|
||||
if (!userrole) return
|
||||
permissionsArray.push({
|
||||
id:userrole,
|
||||
type:"role",
|
||||
deny:[pfb.ViewChannel]
|
||||
})
|
||||
}catch{
|
||||
log("system","invalid role! At 'config.json => system/member_role")
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//create the channel
|
||||
interaction.guild.channels.create(ticketName,{
|
||||
type:"GUILD_TEXT",
|
||||
interaction.guild.channels.create({
|
||||
name:ticketName,
|
||||
type:discord.ChannelType.GuildText,
|
||||
parent:newTicketCategory,
|
||||
reason:"A new ticket is created",
|
||||
permissionOverwrites:permissionsArray
|
||||
|
||||
Regular → Executable
+10
-8
@@ -111,6 +111,8 @@ module.exports = () => {
|
||||
|
||||
})
|
||||
|
||||
const pfb = discord.PermissionFlagsBits
|
||||
|
||||
client.on("interactionCreate",(interaction) => {
|
||||
if (!interaction.isButton()) return
|
||||
if (interaction.customId != "reopenTicketTrue") return
|
||||
@@ -131,14 +133,14 @@ module.exports = () => {
|
||||
|
||||
//set everyone allowed
|
||||
if (config.system['has@everyoneaccess']){
|
||||
var everyoneAllowPerms = ["ADD_REACTIONS","ATTACH_FILES","EMBED_LINKS","SEND_MESSAGES","VIEW_CHANNEL"]
|
||||
var everyoneAllowPerms = [pfb.AddReactions,pfb.AttachFiles,pfb.EmbedLinks,pfb.SendMessages,pfb.ViewChannel]
|
||||
var everyoneDenyPerms = []
|
||||
}else{
|
||||
var everyoneAllowPerms = []
|
||||
var everyoneDenyPerms = ["VIEW_CHANNEL"]
|
||||
var everyoneDenyPerms = [pfb.ViewChannel]
|
||||
}
|
||||
permissionsArray.push({
|
||||
id:interaction.guild.id,
|
||||
id:interaction.guild.roles.everyone,
|
||||
type:"role",
|
||||
allow:everyoneAllowPerms,
|
||||
deny:everyoneDenyPerms
|
||||
@@ -149,7 +151,7 @@ module.exports = () => {
|
||||
permissionsArray.push({
|
||||
id:p.id,
|
||||
type:"member",
|
||||
allow:["ADD_REACTIONS","ATTACH_FILES","EMBED_LINKS","SEND_MESSAGES","VIEW_CHANNEL"],
|
||||
allow:[pfb.AddReactions,pfb.AttachFiles,pfb.EmbedLinks,pfb.SendMessages,pfb.ViewChannel],
|
||||
deny:[]
|
||||
})
|
||||
}
|
||||
@@ -198,14 +200,14 @@ module.exports = () => {
|
||||
|
||||
//set everyone allowed
|
||||
if (config.system['has@everyoneaccess']){
|
||||
var everyoneAllowPerms = ["ADD_REACTIONS","ATTACH_FILES","EMBED_LINKS","SEND_MESSAGES","VIEW_CHANNEL"]
|
||||
var everyoneAllowPerms = [pfb.AddReactions,pfb.AttachFiles,pfb.EmbedLinks,pfb.SendMessages,pfb.ViewChannel]
|
||||
var everyoneDenyPerms = []
|
||||
}else{
|
||||
var everyoneAllowPerms = []
|
||||
var everyoneDenyPerms = ["VIEW_CHANNEL"]
|
||||
var everyoneDenyPerms = [pfb.ViewChannel]
|
||||
}
|
||||
permissionsArray.push({
|
||||
id:interaction.guild.id,
|
||||
id:interaction.guild.roles.everyone,
|
||||
type:"role",
|
||||
allow:everyoneAllowPerms,
|
||||
deny:everyoneDenyPerms
|
||||
@@ -216,7 +218,7 @@ module.exports = () => {
|
||||
permissionsArray.push({
|
||||
id:p.id,
|
||||
type:"member",
|
||||
allow:["ADD_REACTIONS","ATTACH_FILES","EMBED_LINKS","SEND_MESSAGES","VIEW_CHANNEL"],
|
||||
allow:[pfb.AddReactions,pfb.AttachFiles,pfb.EmbedLinks,pfb.SendMessages,pfb.ViewChannel],
|
||||
deny:[]
|
||||
})
|
||||
}
|
||||
|
||||
Regular → Executable
+2
-2
@@ -39,7 +39,7 @@ const getUserInfo = (channel) => {
|
||||
*
|
||||
* @param {discord.Message[]} messagecollection
|
||||
* @param {discord.Channel} channel
|
||||
* @returns new `discord.messageAttachment`
|
||||
* @returns new `discord.attachmentBuilder`
|
||||
*/
|
||||
|
||||
exports.createTranscript = async (messagecollection,channel) => {
|
||||
@@ -64,7 +64,7 @@ exports.createTranscript = async (messagecollection,channel) => {
|
||||
if (filearray.length < 2) filearray.push("transcript is empty")
|
||||
const filestring = filearray.join("\n")
|
||||
const filebuff = Buffer.from(filestring,"utf-8")
|
||||
return new discord.MessageAttachment(filebuff,"transcript_"+ticketuserdata.ticketname+".txt")
|
||||
return new discord.AttachmentBuilder(filebuff,{name:"transcript_"+ticketuserdata.ticketname+".txt",description:"An Open Ticket transcript"})
|
||||
}catch(err){
|
||||
console.log("[error] "+err)
|
||||
return false
|
||||
|
||||
Reference in New Issue
Block a user