v3.3 push 6 (added ticket claiming)

This commit is contained in:
DJj123dj
2023-03-18 11:48:01 +01:00
parent 67d429c52b
commit 1159af9fa9
26 changed files with 600 additions and 218 deletions
+42 -17
View File
@@ -5,6 +5,8 @@ const config = bot.config
const log = bot.errorLog.log const log = bot.errorLog.log
const l = bot.language const l = bot.language
const permsChecker = require("../core/utils/permisssionChecker") const permsChecker = require("../core/utils/permisssionChecker")
const embed = discord.EmbedBuilder
const storage = bot.storage
const APIEvents = require("../core/api/modules/events") const APIEvents = require("../core/api/modules/events")
const DISABLE = require("../core/api/api.json").disable const DISABLE = require("../core/api/api.json").disable
@@ -25,24 +27,36 @@ module.exports = () => {
} }
msg.channel.messages.fetchPinned().then(msglist => { msg.channel.messages.fetchPinned().then(msglist => {
/**@type {discord.Message} */
var firstmsg = msglist.last() var firstmsg = msglist.last()
if (firstmsg == undefined || firstmsg.author.id != client.user.id) return msg.channel.send({embeds:[bot.errorLog.notInATicket]}) if (firstmsg == undefined || firstmsg.author.id != client.user.id) return msg.channel.send({embeds:[bot.errorLog.notInATicket]})
const hiddendata = bot.hiddenData.readHiddenData(firstmsg.embeds[0].description) const hdraw = bot.hiddenData.removeHiddenData(firstmsg.embeds[0].description)
const hiddendata = hdraw.hiddenData
const ticketId = hiddendata.data.find(d => d.key == "type").value const ticketId = hiddendata.data.find(d => d.key == "type").value
hiddendata.data.push({key:"claimedby",value:interaction.user.id})
storage.set("claimData",interaction.channel.id,interaction.user.id)
//msg.channel.send({embeds:[bot.embeds.commands.claimEmbed(claimingUser,msg.author)]}) const newEmbed = new embed(firstmsg.embeds[0].data)
msg.channel.send({embeds:[bot.errorLog.warning("Coming soon!","This feature isn't ready yet!\nIt will become active in the next update!")]}) .setFooter({text:"claimed by: "+interaction.user.tag,iconURL:interaction.user.displayAvatarURL()})
.setDescription(hdraw.description+bot.hiddenData.writeHiddenData(hiddendata.type,hiddendata.data))
if (!firstmsg.components[0].components[1].disabled){
firstmsg.edit({components:[bot.buttons.firstmsg.firstmsgRowNormalNoClaim],embeds:[newEmbed]})
}else if (firstmsg.components[0].components[1].disabled){
firstmsg.edit({components:[bot.buttons.firstmsg.firstmsgRowDisabledNoClaim],embeds:[newEmbed]})
}
msg.channel.send({embeds:[bot.embeds.commands.claimEmbed(claimingUser,msg.author)]})
var loguser = claimingUser
log("command","someone used the 'claim' command",[{key:"user",value:msg.author.tag}]) log("command","someone used the 'claim' command",[{key:"user",value:msg.author.tag}])
log("system","user claimed to ticket",[{key:"user",value:msg.author.tag},{key:"ticket",value:msg.channel.name},{key:"claimed_user",value:claimingUser.tag}]) log("system","user claimed to ticket",[{key:"user",value:msg.author.tag},{key:"ticket",value:msg.channel.name},{key:"claimed_user",value:claimingUser.tag}])
const ticketData = require("../core/utils/configParser").getTicketById(ticketId,true) const ticketData = require("../core/utils/configParser").getTicketById(ticketId,true)
//APIEvents.onTicketAdd(msg.author,loguser,msg.channel,msg.guild,new Date(),{status:"open",name:msg.channel.name,ticketOptions:ticketData}) APIEvents.onTicketClaim(msg.author,loguser,msg.channel,msg.guild,new Date(),{status:"open",name:msg.channel.name,ticketOptions:ticketData})
//APIEvents.onCommand("add",permsChecker.command(msg.author.id,msg.guild.id),msg.author,msg.channel,msg.guild,new Date()) APIEvents.onCommand("claim",permsChecker.command(msg.author.id,msg.guild.id),msg.author,msg.channel,msg.guild,new Date())
}) })
}) })
if (!DISABLE.commands.slash.claim) client.on("interactionCreate",async (interaction) => { if (!DISABLE.commands.slash.claim) client.on("interactionCreate",async (interaction) => {
@@ -59,24 +73,35 @@ module.exports = () => {
await interaction.deferReply() await interaction.deferReply()
interaction.channel.messages.fetchPinned().then(msglist => { interaction.channel.messages.fetchPinned().then(msglist => {
/**@type {discord.Message} */
var firstmsg = msglist.last() var firstmsg = msglist.last()
if (firstmsg == undefined || firstmsg.author.id != client.user.id) return interaction.editReply({embeds:[bot.errorLog.notInATicket]}) if (firstmsg == undefined || firstmsg.author.id != client.user.id) return interaction.editReply({embeds:[bot.errorLog.notInATicket]})
const hiddendata = bot.hiddenData.readHiddenData(firstmsg.embeds[0].description) const hdraw = bot.hiddenData.removeHiddenData(firstmsg.embeds[0].description)
const hiddendata = hdraw.hiddenData
const ticketId = hiddendata.data.find(d => d.key == "type").value const ticketId = hiddendata.data.find(d => d.key == "type").value
//interaction.editReply({embeds:[bot.embeds.commands.claimEmbed(user,interaction.user)]}) hiddendata.data.push({key:"claimedby",value:interaction.user.id})
interaction.editReply({embeds:[bot.errorLog.warning("Coming soon!","This feature isn't ready yet!\nIt will become active in the next update!")]}) storage.set("claimData",interaction.channel.id,interaction.user.id)
const newEmbed = new embed(firstmsg.embeds[0].data)
.setFooter({text:"claimed by: "+user.tag,iconURL:user.displayAvatarURL()})
.setDescription(hdraw.description+bot.hiddenData.writeHiddenData(hiddendata.type,hiddendata.data))
if (!firstmsg.components[0].components[1].disabled){
firstmsg.edit({components:[bot.buttons.firstmsg.firstmsgRowNormalNoClaim],embeds:[newEmbed]})
}else if (firstmsg.components[0].components[1].disabled){
firstmsg.edit({components:[bot.buttons.firstmsg.firstmsgRowDisabledNoClaim],embeds:[newEmbed]})
}
interaction.editReply({embeds:[bot.embeds.commands.claimEmbed(user,interaction.user)]})
var loguser = user
log("command","someone used the 'claim' command",[{key:"user",value:interaction.user.tag}]) log("command","someone used the 'claim' command",[{key:"user",value:interaction.user.tag}])
log("system","user claimed to ticket",[{key:"user",value:interaction.user.tag},{key:"ticket",value:interaction.channel.name},{key:"claimed_user",value:loguser.tag}]) log("system","user claimed to ticket",[{key:"user",value:interaction.user.tag},{key:"ticket",value:interaction.channel.name},{key:"claimed_user",value:user.tag}])
const ticketData = require("../core/utils/configParser").getTicketById(ticketId,true) const ticketData = require("../core/utils/configParser").getTicketById(ticketId,true)
//APIEvents.onTicketAdd(interaction.user,loguser,interaction.channel,interaction.guild,new Date(),{status:"open",name:interaction.channel.name,ticketOptions:ticketData}) APIEvents.onTicketClaim(interaction.user,user,interaction.channel,interaction.guild,new Date(),{status:"open",name:interaction.channel.name,ticketOptions:ticketData})
//APIEvents.onCommand("add",permsChecker.command(interaction.user.id,interaction.guild.id),interaction.user,interaction.channel,interaction.guild,new Date()) APIEvents.onCommand("claim",permsChecker.command(interaction.user.id,interaction.guild.id),interaction.user,interaction.channel,interaction.guild,new Date())
}) })
}) })
} }
+4 -1
View File
@@ -19,7 +19,10 @@ module.exports = () => {
.setTitle("❔ "+l.helpMenu.title) .setTitle("❔ "+l.helpMenu.title)
const header = l.helpMenu.header2 const header = l.helpMenu.header2
helpEmbed.setDescription(header+"`"+prefix+msgName+" <id>` ➜ _"+l.helpMenu.msgCmd+"_\n\n`"+prefix+"rename <name>` ➜ _"+l.helpMenu.renameCmd+"_\n`"+prefix+"close` ➜ _"+l.helpMenu.closeCmd+"_\n`"+prefix+"delete` ➜ _"+l.helpMenu.deleteCmd+"_\n`"+prefix+"reopen` ➜ _"+l.helpMenu.reopenCmd+"_\n\n`"+prefix+"add <user>` ➜ _"+l.helpMenu.addCmd+"_\n`"+prefix+"remove <user>` ➜ _"+l.helpMenu.removeCmd+"_\n\n`"+prefix+"change <newtype>` ➜ _Change ticket type._") helpEmbed.setDescription(header+"`"+prefix+msgName+" <id>` ➜ _"+l.helpMenu.msgCmd+"_\n\n`"+prefix+"rename <name>` ➜ _"+l.helpMenu.renameCmd+"_\n`"+prefix+"close [reason]` ➜ _"+l.helpMenu.closeCmd+"_\n`"+prefix+"delete` ➜ _"+l.helpMenu.deleteCmd+"_\n`"+prefix+"reopen` ➜ _"+l.helpMenu.reopenCmd+"_\n\n`"+prefix+"add <user>` ➜ _"+l.helpMenu.addCmd+"_\n`"+prefix+"remove <user>` ➜ _"+l.helpMenu.removeCmd+"_\n\n`"+prefix+"change <newtype>` ➜ _"+l.helpMenu.changeCmd+"_\n`"+prefix+"claim [user]` ➜ _"+l.helpMenu.claimCmd+"_\n`"+prefix+"unclaim` ➜ _"+l.helpMenu.unclaimCmd+"_")
helpEmbed.addFields([
{name:"Autoclose",value:l.helpMenu.autocloseCmd+"\n`"+prefix+"autoclose enable <inactive time>`\n`"+prefix+"autoclose disable`"}
])
var otherprefix = prefix.endsWith(" ") ? prefix.substring(0,prefix.length-1) : prefix var otherprefix = prefix.endsWith(" ") ? prefix.substring(0,prefix.length-1) : prefix
+50 -19
View File
@@ -5,6 +5,8 @@ const config = bot.config
const log = bot.errorLog.log const log = bot.errorLog.log
const l = bot.language const l = bot.language
const permsChecker = require("../core/utils/permisssionChecker") const permsChecker = require("../core/utils/permisssionChecker")
const embed = discord.EmbedBuilder
const storage = bot.storage
const APIEvents = require("../core/api/modules/events") const APIEvents = require("../core/api/modules/events")
const DISABLE = require("../core/api/api.json").disable const DISABLE = require("../core/api/api.json").disable
@@ -21,31 +23,45 @@ module.exports = () => {
return return
} }
const unclaimuser = storage.get("claimData",msg.channel.id)
if (!unclaimuser || unclaimuser == "false") return msg.channel.send({embeds:[bot.errorLog.serverError("This ticket isn't claimed yet!")]})
msg.channel.messages.fetchPinned().then(msglist => { msg.channel.messages.fetchPinned().then(msglist => {
/**@type {discord.Message} */
var firstmsg = msglist.last() var firstmsg = msglist.last()
if (firstmsg == undefined || firstmsg.author.id != client.user.id) return msg.channel.send({embeds:[bot.errorLog.notInATicket]}) if (firstmsg == undefined || firstmsg.author.id != client.user.id) return msg.channel.send({embeds:[bot.errorLog.notInATicket]})
const hiddendata = bot.hiddenData.readHiddenData(firstmsg.embeds[0].description) const hdraw = bot.hiddenData.removeHiddenData(firstmsg.embeds[0].description)
const hiddendata = hdraw.hiddenData
const ticketId = hiddendata.data.find(d => d.key == "type").value const ticketId = hiddendata.data.find(d => d.key == "type").value
hiddendata.data.push({key:"claimedby",value:"false"})
storage.set("claimData",interaction.channel.id,"false")
//msg.channel.send({embeds:[bot.embeds.commands.unclaimEmbed(msg.author)]}) const newEmbed = new embed(firstmsg.embeds[0].data)
msg.channel.send({embeds:[bot.errorLog.warning("Coming soon!","This feature isn't ready yet!\nIt will become active in the next update!")]}) .setFooter(null)
.setDescription(hdraw.description+bot.hiddenData.writeHiddenData(hiddendata.type,hiddendata.data))
if (!firstmsg.components[0].components[1].disabled){
firstmsg.edit({components:[bot.buttons.firstmsg.firstmsgRowNormal],embeds:[newEmbed]})
}else if (firstmsg.components[0].components[1].disabled){
firstmsg.edit({components:[bot.buttons.firstmsg.firstmsgRowDisabled],embeds:[newEmbed]})
}
msg.channel.send({embeds:[bot.embeds.commands.unclaimEmbed(msg.author)]})
var loguser = msg.author
log("command","someone used the 'unclaim' command",[{key:"user",value:msg.author.tag}]) log("command","someone used the 'unclaim' command",[{key:"user",value:msg.author.tag}])
log("system","user unclaimed from ticket",[{key:"user",value:msg.author.tag},{key:"ticket",value:msg.channel.name},{key:"unclaimed_user",value:msg.author.tag}]) log("system","user unclaimed from ticket",[{key:"user",value:msg.author.tag},{key:"ticket",value:msg.channel.name},{key:"unclaimed_user",value:unclaimuser}])
const ticketData = require("../core/utils/configParser").getTicketById(ticketId,true) const ticketData = require("../core/utils/configParser").getTicketById(ticketId,true)
//APIEvents.onTicketAdd(msg.author,loguser,msg.channel,msg.guild,new Date(),{status:"open",name:msg.channel.name,ticketOptions:ticketData}) APIEvents.onTicketUnclaim(msg.author,msg.channel,msg.guild,new Date(),{status:"open",name:msg.channel.name,ticketOptions:ticketData})
//APIEvents.onCommand("add",permsChecker.command(msg.author.id,msg.guild.id),msg.author,msg.channel,msg.guild,new Date()) APIEvents.onCommand("unclaim",permsChecker.command(msg.author.id,msg.guild.id),msg.author,msg.channel,msg.guild,new Date())
}) })
}) })
if (!DISABLE.commands.slash.unclaim) client.on("interactionCreate",async (interaction) => { if (!DISABLE.commands.slash.unclaim) client.on("interactionCreate",async (interaction) => {
if (!interaction.isChatInputCommand()) return if (!interaction.isChatInputCommand()) return
if (interaction.commandName != "unclaim") return if (interaction.commandName != "unclaim") return
const user = interaction.user
if (!interaction.guild) return if (!interaction.guild) return
if (!permsChecker.command(interaction.user.id,interaction.guild.id)){ if (!permsChecker.command(interaction.user.id,interaction.guild.id)){
@@ -55,25 +71,40 @@ module.exports = () => {
await interaction.deferReply() await interaction.deferReply()
const unclaimuser = storage.get("claimData",interaction.channel.id)
if (!unclaimuser || unclaimuser == "false") return interaction.editReply({embeds:[bot.errorLog.serverError("This ticket isn't claimed yet!")]})
interaction.channel.messages.fetchPinned().then(msglist => { interaction.channel.messages.fetchPinned().then(msglist => {
/**@type {discord.Message} */
var firstmsg = msglist.last() var firstmsg = msglist.last()
if (firstmsg == undefined || firstmsg.author.id != client.user.id) return interaction.editReply({embeds:[bot.errorLog.notInATicket]}) if (firstmsg == undefined || firstmsg.author.id != client.user.id) return interaction.editReply({embeds:[bot.errorLog.notInATicket]})
const hiddendata = bot.hiddenData.readHiddenData(firstmsg.embeds[0].description) const hdraw = bot.hiddenData.removeHiddenData(firstmsg.embeds[0].description)
const hiddendata = hdraw.hiddenData
const ticketId = hiddendata.data.find(d => d.key == "type").value const ticketId = hiddendata.data.find(d => d.key == "type").value
//interaction.editReply({embeds:[bot.embeds.commands.unclaimEmbed(interaction.user)]}) hiddendata.data.push({key:"claimedby",value:"false"})
interaction.editReply({embeds:[bot.errorLog.warning("Coming soon!","This feature isn't ready yet!\nIt will become active in the next update!")]}) storage.set("claimData",interaction.channel.id,"false")
const newEmbed = new embed(firstmsg.embeds[0].data)
.setFooter(null)
.setDescription(hdraw.description+bot.hiddenData.writeHiddenData(hiddendata.type,hiddendata.data))
if (!firstmsg.components[0].components[1].disabled){
firstmsg.edit({components:[bot.buttons.firstmsg.firstmsgRowNormal],embeds:[newEmbed]})
}else if (firstmsg.components[0].components[1].disabled){
firstmsg.edit({components:[bot.buttons.firstmsg.firstmsgRowDisabled],embeds:[newEmbed]})
}
interaction.editReply({embeds:[bot.embeds.commands.unclaimEmbed(interaction.user)]})
var loguser = user
log("command","someone used the 'unclaim' command",[{key:"user",value:interaction.user.tag}]) log("command","someone used the 'unclaim' command",[{key:"user",value:interaction.user.tag}])
log("system","user unclaimed from ticket",[{key:"user",value:interaction.user.tag},{key:"ticket",value:interaction.channel.name},{key:"unclaimed_user",value:loguser.tag}]) log("system","user unclaimed from ticket",[{key:"user",value:interaction.user.tag},{key:"ticket",value:interaction.channel.name},{key:"unclaimed_user",value:unclaimuser}])
const ticketData = require("../core/utils/configParser").getTicketById(ticketId,true) const ticketData = require("../core/utils/configParser").getTicketById(ticketId,true)
//APIEvents.onTicketAdd(interaction.user,loguser,interaction.channel,interaction.guild,new Date(),{status:"open",name:interaction.channel.name,ticketOptions:ticketData}) APIEvents.onTicketUnclaim(interaction.user,interaction.channel,interaction.guild,new Date(),{status:"open",name:interaction.channel.name,ticketOptions:ticketData})
//APIEvents.onCommand("add",permsChecker.command(interaction.user.id,interaction.guild.id),interaction.user,interaction.channel,interaction.guild,new Date()) APIEvents.onCommand("unclaim",permsChecker.command(interaction.user.id,interaction.guild.id),interaction.user,interaction.channel,interaction.guild,new Date())
}) })
}) })
} }
@@ -15,6 +15,13 @@ const bs = discord.ButtonStyle
exports.firstmsgRowNormal = new arb() exports.firstmsgRowNormal = new arb()
.addComponents(
new button()
.setCustomId("OTclaimTicket")
.setDisabled(false)
.setStyle(bs.Success)
.setLabel("Claim Ticket")
)
.addComponents( .addComponents(
new button() new button()
.setCustomId("OTcloseTicket") .setCustomId("OTcloseTicket")
@@ -33,6 +40,63 @@ exports.firstmsgRowNormal = new arb()
) )
exports.firstmsgRowDisabled = new arb() exports.firstmsgRowDisabled = new arb()
.addComponents(
new button()
.setCustomId("OTclaimTicket")
.setDisabled(false)
.setStyle(bs.Success)
.setLabel("Claim Ticket")
)
.addComponents(
new button()
.setCustomId("OTcloseTicket")
.setDisabled(true)
.setStyle(bs.Secondary)
.setLabel(l.buttons.close)
.setEmoji("🔒")
)
.addComponents(
new button()
.setCustomId("OTdeleteTicket")
.setDisabled(true)
.setStyle(bs.Danger)
.setLabel(l.buttons.delete)
.setEmoji("✖️")
)
exports.firstmsgRowNormalNoClaim = new arb()
.addComponents(
new button()
.setCustomId("OTclaimTicket")
.setDisabled(true)
.setStyle(bs.Secondary)
.setLabel("Claim Ticket")
)
.addComponents(
new button()
.setCustomId("OTcloseTicket")
.setDisabled(false)
.setStyle(bs.Secondary)
.setLabel(l.buttons.close)
.setEmoji("🔒")
)
.addComponents(
new button()
.setCustomId("OTdeleteTicket")
.setDisabled(false)
.setStyle(bs.Danger)
.setLabel(l.buttons.delete)
.setEmoji("✖️")
)
exports.firstmsgRowDisabledNoClaim = new arb()
.addComponents(
new button()
.setCustomId("OTclaimTicket")
.setDisabled(true)
.setStyle(bs.Secondary)
.setLabel("Claim Ticket")
)
.addComponents( .addComponents(
new button() new button()
.setCustomId("OTcloseTicket") .setCustomId("OTcloseTicket")
@@ -0,0 +1,51 @@
const discord = require('discord.js')
const bot = require('../../../../index')
const client = bot.client
const config = bot.config
const l = bot.language
const log = bot.errorLog.log
const permissionChecker = require("../../../utils/permisssionChecker")
const storage = bot.storage
const hiddendata = bot.hiddenData
const embed = discord.EmbedBuilder
const mc = config.color
const button = discord.ButtonBuilder
const arb = discord.ActionRowBuilder
const bs = discord.ButtonStyle
module.exports = () => {
//CLAIM
client.on("interactionCreate",async interaction => {
if (!interaction.isButton()) return
if (interaction.customId != "OTclaimTicket") return
try {
interaction.deferUpdate()
}catch{}
interaction.channel.messages.fetchPinned().then(msglist => {
/**@type {discord.Message} */
var firstmsg = msglist.last()
if (firstmsg == undefined || firstmsg.author.id != client.user.id) return interaction.editReply({embeds:[bot.errorLog.notInATicket]})
const hdraw = bot.hiddenData.removeHiddenData(firstmsg.embeds[0].description)
const hiddendata = hdraw.hiddenData
const ticketId = hiddendata.data.find(d => d.key == "type").value
hiddendata.data.push({key:"claimedby",value:interaction.user.id})
storage.set("claimData",interaction.channel.id,interaction.user.id)
const newEmbed = new embed(firstmsg.embeds[0].data)
.setFooter({text:"claimed by: "+interaction.user.tag,iconURL:interaction.user.displayAvatarURL()})
.setDescription(hdraw.description+bot.hiddenData.writeHiddenData(hiddendata.type,hiddendata.data))
if (!firstmsg.components[0].components[1].disabled){
firstmsg.edit({components:[bot.buttons.firstmsg.firstmsgRowNormalNoClaim],embeds:[newEmbed]})
}else if (firstmsg.components[0].components[1].disabled){
firstmsg.edit({components:[bot.buttons.firstmsg.firstmsgRowDisabledNoClaim],embeds:[newEmbed]})
}
})
})
}
@@ -41,8 +41,18 @@ module.exports = () => {
return return
} }
} }
if (interaction.message.pinned && interaction.message.author.id == client.user.id){
const claimdata = storage.get("claimData",interaction.channel.id)
console.log(claimdata)
if (claimdata && claimdata != "false"){
interaction.message.edit({components:[bot.buttons.firstmsg.firstmsgRowDisabledNoClaim]})
}else{
interaction.message.edit({components:[bot.buttons.firstmsg.firstmsgRowDisabled]})
}
}else{
interaction.message.edit({components:[bot.buttons.close.openRowDisabled]}) interaction.message.edit({components:[bot.buttons.close.openRowDisabled]})
}
/** /**
* @type {String} * @type {String}
@@ -7,4 +7,5 @@ module.exports = () => {
require("./accepted/reopening")() require("./accepted/reopening")()
require("./accepted/deleting")() require("./accepted/deleting")()
require("./accepted/closingReason")() require("./accepted/closingReason")()
require("./accepted/claiming")()
} }
+1
View File
@@ -16,6 +16,7 @@ const showFlags = async (chalk) => {
if (process.argv.some((v) => v == "--debug")) console.log(chalk.blue("[FLAGS] => enabled DEBUG mode")); isFlag = true if (process.argv.some((v) => v == "--debug")) console.log(chalk.blue("[FLAGS] => enabled DEBUG mode")); isFlag = true
if (process.argv.some((v) => v == "--noslash")) console.log(chalk.blue("[FLAGS] => slash commands disabled")); isFlag = true if (process.argv.some((v) => v == "--noslash")) console.log(chalk.blue("[FLAGS] => slash commands disabled")); isFlag = true
if (process.argv.some((v) => v == "--localstatus")) console.log(chalk.blue("[FLAGS] => using local livestatus.json")); isFlag = true if (process.argv.some((v) => v == "--localstatus")) console.log(chalk.blue("[FLAGS] => using local livestatus.json")); isFlag = true
if (process.argv.some((v) => v == "--noerrorupload")) console.log(chalk.blue("[FLAGS] => not uploading errors to liveStatus")); isFlag = true
if (!isFlag) console.log(chalk.blue("no flags!")) if (!isFlag) console.log(chalk.blue("no flags!"))
} }
+5 -21
View File
@@ -35,7 +35,7 @@ exports.NEWcloseTicket = async (member,channel,prefix,mode,reason,nomessage) =>
const ticketOpenerChannelName = channelname.split(prefix)[1] const ticketOpenerChannelName = channelname.split(prefix)[1]
//get user that opened the ticket //get user that opened the ticket
var getuserID = storage.get("userTicketStorage",channel.id) var getuserID = storage.get("userFromChannel",channel.id)
try { try {
var ticketOpener = client.users.cache.find(u => u.id === getuserID) var ticketOpener = client.users.cache.find(u => u.id === getuserID)
var isDatabaseError = false var isDatabaseError = false
@@ -66,7 +66,9 @@ exports.NEWcloseTicket = async (member,channel,prefix,mode,reason,nomessage) =>
log("system","deleted a ticket",[{key:"user",value:user.tag},{key:"ticket",value:channel.name}]) log("system","deleted a ticket",[{key:"user",value:user.tag},{key:"ticket",value:channel.name}])
pendingDelete.push(channel.id) pendingDelete.push(channel.id)
if (!isDatabaseError) storage.set("ticketStorage",getuserID,Number(storage.get("ticketStorage",getuserID)) - 1) if (!isDatabaseError) storage.set("amountOfUserTickets",getuserID,Number(storage.get("amountOfUserTickets",getuserID)) - 1)
storage.delete("userFromChannel",channel.id)
storage.delete("claimData",channel.id)
//getID & send DM & send api event //getID & send DM & send api event
await channel.messages.fetchPinned().then(async msglist => { await channel.messages.fetchPinned().then(async msglist => {
@@ -192,29 +194,11 @@ exports.NEWcloseTicket = async (member,channel,prefix,mode,reason,nomessage) =>
if (!nomessage){ if (!nomessage){
//message //message
var closeButtonRow = new discord.ActionRowBuilder()
.addComponents(
new discord.ButtonBuilder()
.setCustomId("OTdeleteTicket1")
.setDisabled(false)
.setStyle(discord.ButtonStyle.Danger)
.setLabel(l.buttons.delete)
.setEmoji("✖️")
)
.addComponents(
new discord.ButtonBuilder()
.setCustomId("OTreopenTicket")
.setDisabled(false)
.setStyle(discord.ButtonStyle.Success)
.setLabel(l.buttons.reopen)
.setEmoji("✔")
)
const embed = new discord.EmbedBuilder() const embed = new discord.EmbedBuilder()
.setColor(config.color) .setColor(config.color)
.setTitle(":lock: "+l.commands.closeTitle+" :lock:") .setTitle(":lock: "+l.commands.closeTitle+" :lock:")
.setDescription(l.messages.closedDescription) .setDescription(l.messages.closedDescription)
channel.send({embeds:[embed],components:[closeButtonRow]}) channel.send({embeds:[embed],components:[bot.buttons.close.closeCommandRow]})
} }
log("system","closed a ticket",[{key:"user",value:user.tag},{key:"ticket",value:channel.name}]) log("system","closed a ticket",[{key:"user",value:user.tag},{key:"ticket",value:channel.name}])
+4 -4
View File
@@ -63,10 +63,10 @@ module.exports = () => {
} catch{} } catch{}
} }
if (storage.get("ticketStorage",interaction.member.id) == null || storage.get("ticketStorage",interaction.member.id) == "false"|| Number(storage.get("ticketStorage",interaction.member.id)) < config.system.maxAmountOfTickets){ if (storage.get("amountOfUserTickets",interaction.member.id) == null || storage.get("amountOfUserTickets",interaction.member.id) == "false"|| Number(storage.get("amountOfUserTickets",interaction.member.id)) < config.system.maxAmountOfTickets){
//update storage //update storage
storage.set("ticketStorage",interaction.member.id,Number(storage.get("ticketStorage",interaction.member.id))+1) storage.set("amountOfUserTickets",interaction.member.id,Number(storage.get("amountOfUserTickets",interaction.member.id))+1)
var ticketNumber = interaction.member.user.username var ticketNumber = interaction.member.user.username
//set ticketName //set ticketName
@@ -162,7 +162,7 @@ module.exports = () => {
permissionOverwrites:permissionsArray permissionOverwrites:permissionsArray
}).then((ticketChannel) => { }).then((ticketChannel) => {
storage.set("userTicketStorage",ticketChannel.id,interaction.member.id) storage.set("userFromChannel",ticketChannel.id,interaction.member.id)
const hiddendata = bot.hiddenData.writeHiddenData("ticketdata",[{key:"type",value:currentTicketOptions.id},{key:"openerid",value:interaction.user.id},{key:"createdms",value:new Date().getTime()}]) const hiddendata = bot.hiddenData.writeHiddenData("ticketdata",[{key:"type",value:currentTicketOptions.id},{key:"openerid",value:interaction.user.id},{key:"createdms",value:new Date().getTime()}])
@@ -198,7 +198,7 @@ module.exports = () => {
.setStyle(discord.ButtonStyle.Link) .setStyle(discord.ButtonStyle.Link)
.setDisabled(false) .setDisabled(false)
.setEmoji("🎫") .setEmoji("🎫")
.setLabel("go to ticket") .setLabel(l.commands.goToTicket)
.setURL(ticketChannel.url) .setURL(ticketChannel.url)
]) ])
+4 -1
View File
@@ -139,6 +139,7 @@ exports.run = async (pluginData) => {
/**@param {OTLiveStatusError} options @returns {Promise<Boolean>} */ /**@param {OTLiveStatusError} options @returns {Promise<Boolean>} */
const uploadLiveStatus = (options) => { const uploadLiveStatus = (options) => {
return new Promise((resolve,reject) => { return new Promise((resolve,reject) => {
if (process.argv.some((v) => v == "--noerrorupload")) return resolve(true)
try { try {
var data = encodeURIComponent(JSON.stringify(options)) var data = encodeURIComponent(JSON.stringify(options))
axios.get("https://livestatus.dj-dj.be/openticket?auth=openticketLIVESTATUS1234&data="+data).then((res) => { axios.get("https://livestatus.dj-dj.be/openticket?auth=openticketLIVESTATUS1234&data="+data).then((res) => {
@@ -154,8 +155,9 @@ const uploadLiveStatus = (options) => {
/**@param {String} err @returns {Promise<Boolean>}*/ /**@param {String} err @returns {Promise<Boolean>}*/
exports.liveStatusUploadManager = async (err) => { exports.liveStatusUploadManager = async (err) => {
return new Promise(async (resolve) => { return new Promise(async (resolve) => {
//use globalPluginData for (some) plugin details
if (process.argv.some((v) => v == "--noerrorupload")) return resolve(true)
else{
var tsenabled = (bot.tsconfig.sendTranscripts.enableChannel || bot.tsconfig.sendTranscripts.enableDM) var tsenabled = (bot.tsconfig.sendTranscripts.enableChannel || bot.tsconfig.sendTranscripts.enableDM)
var tsmode = bot.tsconfig.sendTranscripts.useHTMLtranscripts ? "html" : "text" var tsmode = bot.tsconfig.sendTranscripts.useHTMLtranscripts ? "html" : "text"
const transcriptMode = tsenabled ? tsmode : false const transcriptMode = tsenabled ? tsmode : false
@@ -189,5 +191,6 @@ exports.liveStatusUploadManager = async (err) => {
} }
})) }))
}catch{resolve(false)} }catch{resolve(false)}
}
}) })
} }
+16 -2
View File
@@ -23,11 +23,18 @@
"renameTitle": "تم تغيير أسم التكت الى {0}!", "renameTitle": "تم تغيير أسم التكت الى {0}!",
"closeTitle": "تم أغلاق التكت!", "closeTitle": "تم أغلاق التكت!",
"deleteTitle": " جاري حذف التكت...", "deleteTitle": " جاري حذف التكت...",
"reopenTitle": "إعادة فتح التكت!",
"claimTitle":"This ticket is now claimed to {0}", "claimTitle":"This ticket is now claimed to {0}",
"unclaimTitle":"This ticket isn't claimed anymore!", "unclaimTitle":"This ticket isn't claimed anymore!",
"changeTitle":"Changed ticket type to {0}!", "changeTitle":"Changed ticket type to {0}!",
"statsTitle":"Here are the stats for {0}!",
"autocloseTitle":"This ticket will be closed automatically after {0}!",
"autocloseRejectTitle":"This ticket will no longer be closed automatically!",
"autocloseWarn":"This only affects inactive tickets!",
"goToTicket":"go to ticket",
"ticketWarning": "هذا الأمبد موجود بالفعل في الرسالة بالأسفل!", "ticketWarning": "هذا الأمبد موجود بالفعل في الرسالة بالأسفل!",
"maxTicketWarning": "**تحذير:** _يمكنك فقط فتح {0} تكت في الوقت!_" "maxTicketWarning": "**تحذير:** _يمكنك فقط فتح {0} تكت في الوقت!_"
}, },
@@ -42,7 +49,12 @@
"deleteCmd": "حذف التكت.", "deleteCmd": "حذف التكت.",
"addCmd": "إضافة مستخدم الى التكت.", "addCmd": "إضافة مستخدم الى التكت.",
"removeCmd": "إزالة مستخدم من التكت.", "removeCmd": "إزالة مستخدم من التكت.",
"reopenCmd": "إعادة فتح تكت بعد إغلاقة." "reopenCmd": "إعادة فتح تكت بعد إغلاقة.",
"changeCmd":"Change ticket type.",
"claimCmd":"Claim a ticket.",
"unclaimCmd":"Unclaim a ticket.",
"statsCmd":"View ticket stats.",
"autocloseCmd":"Set timer to automatically close ticket"
}, },
"buttons": { "buttons": {
"close": "إغلاق التكت", "close": "إغلاق التكت",
@@ -68,9 +80,11 @@
"none": "لا يوجد", "none": "لا يوجد",
"reason": "سبب", "reason": "سبب",
"createdat":"created at",
"openedby":"opened by",
"deletedby":"deleted by", "deletedby":"deleted by",
"closedby":"closed by", "closedby":"closed by",
"modalreason":"What is the reason for closing this ticket?", "modalreason":"What is the reason for closing this ticket?",
"chooseATicket": "Choose a ticket" "chooseATicket": "Choose a ticket"
}, },
+16 -2
View File
@@ -23,11 +23,18 @@
"renameTitle":"Changed the name to {0}!", "renameTitle":"Changed the name to {0}!",
"closeTitle":"Closed this ticket!", "closeTitle":"Closed this ticket!",
"deleteTitle":"Deleting this ticket...", "deleteTitle":"Deleting this ticket...",
"reopenTitle":"Re-Opened this ticket!",
"claimTitle":"This ticket is now claimed to {0}", "claimTitle":"This ticket is now claimed to {0}",
"unclaimTitle":"This ticket isn't claimed anymore!", "unclaimTitle":"This ticket isn't claimed anymore!",
"changeTitle":"Changed ticket type to {0}!", "changeTitle":"Changed ticket type to {0}!",
"statsTitle":"Here are the stats for {0}!",
"autocloseTitle":"This ticket will be closed automatically after {0}!",
"autocloseRejectTitle":"This ticket will no longer be closed automatically!",
"autocloseWarn":"This only affects inactive tickets!",
"goToTicket":"go to ticket",
"ticketWarning":"The embed is in the message below!", "ticketWarning":"The embed is in the message below!",
"maxTicketWarning":"**Warning:** _You can only create {0} ticket(s) at a time!_" "maxTicketWarning":"**Warning:** _You can only create {0} ticket(s) at a time!_"
}, },
@@ -42,7 +49,12 @@
"deleteCmd":"Delete a ticket.", "deleteCmd":"Delete a ticket.",
"addCmd":"Add a user to the ticket.", "addCmd":"Add a user to the ticket.",
"removeCmd":"Remove a user from the ticket.", "removeCmd":"Remove a user from the ticket.",
"reopenCmd":"Re-Open a ticket after it was closed." "reopenCmd":"Re-Open a ticket after it was closed.",
"changeCmd":"Change ticket type.",
"claimCmd":"Claim a ticket.",
"unclaimCmd":"Unclaim a ticket.",
"statsCmd":"View ticket stats.",
"autocloseCmd":"Set timer to automatically close ticket"
}, },
"buttons":{ "buttons":{
"close":"Close Ticket", "close":"Close Ticket",
@@ -68,9 +80,11 @@
"none":"none", "none":"none",
"reason":"reason", "reason":"reason",
"createdat":"created at",
"openedby":"opened by",
"deletedby":"deleted by", "deletedby":"deleted by",
"closedby":"closed by", "closedby":"closed by",
"modalreason":"What is the reason for closing this ticket?", "modalreason":"What is the reason for closing this ticket?",
"chooseATicket": "Choose a ticket" "chooseATicket": "Choose a ticket"
}, },
+19 -5
View File
@@ -23,11 +23,18 @@
"renameTitle":"Změnit jmeno na {0}!", "renameTitle":"Změnit jmeno na {0}!",
"closeTitle":"Zavři tenhle ticket!", "closeTitle":"Zavři tenhle ticket!",
"deleteTitle":"Mažu ticket...", "deleteTitle":"Mažu ticket...",
"reopenTitle":"Znovu otevíram ticket",
"claimTitle":"Nyní jsi převzal ticket {0}", "claimTitle":"Ticket nyní převzal {0}",
"unclaimTitle":"Tento ticketu už je převzatý!", "unclaimTitle":"Ticket už není převzaný",
"changeTitle":"Změnil jsi typ ticketu na {0}!", "changeTitle":"Změněn typ ticketu {0}!",
"statsTitle":"Tady je info o ticketu {0}!",
"autocloseTitle":"Tento ticketu bude automaticky uzavřen za {0}!",
"autocloseRejectTitle":"Tento ticketu už nebude automaticky uzavřen!",
"autocloseWarn":"Toto zavře pouze neaktivní tickety!",
"goToTicket":"běž do ticketu",
"ticketWarning":"The embed is in the message below!", "ticketWarning":"The embed is in the message below!",
"maxTicketWarning":"**Warning:** _Můžeš vytvořit pouze {0} v tuhle chvíli!_" "maxTicketWarning":"**Warning:** _Můžeš vytvořit pouze {0} v tuhle chvíli!_"
}, },
@@ -42,7 +49,12 @@
"deleteCmd":"Odstranit ticket.", "deleteCmd":"Odstranit ticket.",
"addCmd":"Pridat uživatele do ticketu.", "addCmd":"Pridat uživatele do ticketu.",
"removeCmd":"Odebrat uživatele z ticketu.", "removeCmd":"Odebrat uživatele z ticketu.",
"reopenCmd":"Re-Open a ticket after it was closed." "reopenCmd":"Re-Open a ticket after it was closed.",
"changeCmd":"Změnit typ ticketu.",
"claimCmd":"Převzi ticket.",
"unclaimCmd":"Uvolnit ticket.",
"statsCmd":"Zobrazit info o ticketu.",
"autocloseCmd":"Nastavit automatické uzavření ticketu"
}, },
"buttons":{ "buttons":{
"close":"Zavřit ticket", "close":"Zavřit ticket",
@@ -68,9 +80,11 @@
"none":"žádný", "none":"žádný",
"reason":"důvod", "reason":"důvod",
"createdat":"otevřeno v",
"openedby":"otevřel",
"deletedby":"smazano uzivatelem", "deletedby":"smazano uzivatelem",
"closedby":"zavreno uzivatelem", "closedby":"zavreno uzivatelem",
"modalreason":"Jakž byl důvod k zavření toho ticketu?", "modalreason":"Jakž byl důvod k zavření toho ticketu?",
"chooseATicket": "Vyber ticket" "chooseATicket": "Vyber ticket"
}, },
+19 -5
View File
@@ -23,11 +23,18 @@
"renameTitle": "Ændrede navnet til {0}!", "renameTitle": "Ændrede navnet til {0}!",
"closeTitle": "Lukket denne ticket!", "closeTitle": "Lukket denne ticket!",
"deleteTitle": "Sletter denne ticket...", "deleteTitle": "Sletter denne ticket...",
"reopenTitle": "Genåbnede denne ticket!",
"claimTitle": "Denne ticket er nu krævet til {0}", "claimTitle": "Denne ticket bliver nu håndteret af {0}",
"unclaimTitle": "Der gøres ikke krav på denne ticket længere!", "unclaimTitle": "Denne ticket bliver ikke håndteret længere!",
"changeTitle": "Ændrede ticket type til {0}!", "changeTitle": "Ændrede ticket-type til {0}!",
"statsTitle": "Her er statestikerne til {0}!",
"autocloseTitle": "Denne ticket lukker automatisk om {0}!",
"autocloseRejectTitle": "Denne ticket lukker ikke længere automatisk!",
"autocloseWarn": "Dette har kun effekt på inaktive tickets!",
"goToTicket": "gå til ticket",
"ticketWarning": "Embedet er i meddelelsen nedenfor!", "ticketWarning": "Embedet er i meddelelsen nedenfor!",
"maxTicketWarning": "**Warning:** _Du kan kun oprette {0} ticket(s) ad gangen!_" "maxTicketWarning": "**Warning:** _Du kan kun oprette {0} ticket(s) ad gangen!_"
}, },
@@ -42,7 +49,12 @@
"deleteCmd": "Slet en ticket.", "deleteCmd": "Slet en ticket.",
"addCmd": "Tilføj en bruger til ticketen.", "addCmd": "Tilføj en bruger til ticketen.",
"removeCmd": "Fjern en bruger fra ticketen.", "removeCmd": "Fjern en bruger fra ticketen.",
"reopenCmd": "Genåbn en ticket, efter at den var lukket." "reopenCmd": "Genåbn en ticket, efter at den var lukket.",
"changeCmd": "Skift ticket type.",
"claimCmd": "Håndter en ticket.",
"unclaimCmd": "Afhåndter en ticket.",
"statsCmd": "Se ticket statestiker.",
"autocloseCmd": "Angiv tiden til automatisk at lukke en ticket"
}, },
"buttons": { "buttons": {
"close": "Luk Ticket", "close": "Luk Ticket",
@@ -68,9 +80,11 @@
"none": "intet", "none": "intet",
"reason": "grundlag", "reason": "grundlag",
"createdat": "lavet af",
"openedby": "åbnet af",
"deletedby": "slettet af", "deletedby": "slettet af",
"closedby": "lukket af", "closedby": "lukket af",
"modalreason": "Hvad er grunden til at lukke denne ticket?", "modalreason": "Hvad er grunden til at lukke denne ticket?",
"chooseATicket": "Vælg en ticket" "chooseATicket": "Vælg en ticket"
}, },
+16 -2
View File
@@ -23,11 +23,18 @@
"renameTitle":"De naam is veranderd naar {0}!", "renameTitle":"De naam is veranderd naar {0}!",
"closeTitle":"Ticket gesloten!", "closeTitle":"Ticket gesloten!",
"deleteTitle":"Ticket aan het verwijderen...", "deleteTitle":"Ticket aan het verwijderen...",
"reopenTitle":"Ticket heropend!",
"claimTitle":"Dit ticket is geclaimed door {0}", "claimTitle":"Dit ticket is geclaimed door {0}",
"unclaimTitle":"Dit ticket is niet meer geclaimed!", "unclaimTitle":"Dit ticket is niet meer geclaimed!",
"changeTitle":"Ticket type veranderd naar {0}!", "changeTitle":"Ticket type veranderd naar {0}!",
"statsTitle":"Hier zijn de stats voor {0}!",
"autocloseTitle":"Dit ticket wordt automatisch gesloten na {0}!",
"autocloseRejectTitle":"Dit ticket wordt niet langer automatisch gesloten!",
"autocloseWarn":"Dit geldt alleen voor inactieve tickets!",
"goToTicket":"ga naar ticket",
"ticketWarning":"De embed is in het bericht hier onder!", "ticketWarning":"De embed is in het bericht hier onder!",
"maxTicketWarning":"**Waarschuwing:** _Je kan maar {0} ticket(s) tegelijkertijd maken!_" "maxTicketWarning":"**Waarschuwing:** _Je kan maar {0} ticket(s) tegelijkertijd maken!_"
}, },
@@ -42,7 +49,12 @@
"deleteCmd":"Verijder een ticket.", "deleteCmd":"Verijder een ticket.",
"addCmd":"Voeg een user aan een ticket.", "addCmd":"Voeg een user aan een ticket.",
"removeCmd":"Verwijder een user van een ticket.", "removeCmd":"Verwijder een user van een ticket.",
"reopenCmd":"Heropen een ticket nadat het gesloten is." "reopenCmd":"Heropen een ticket nadat het gesloten is.",
"changeCmd":"Verander ticket type.",
"claimCmd":"Claim een ticket.",
"unclaimCmd":"Unclaim een ticket.",
"statsCmd":"Bekijk ticket stats.",
"autocloseCmd":"Zet een timer om het ticket automatisch te sluiten"
}, },
"buttons":{ "buttons":{
"close":"Sluit Ticket", "close":"Sluit Ticket",
@@ -68,9 +80,11 @@
"none":"geen", "none":"geen",
"reason":"reden", "reason":"reden",
"createdat":"gecreëerd op",
"openedby":"geopend door",
"deletedby":"verwijderd door", "deletedby":"verwijderd door",
"closedby":"gesloten door", "closedby":"gesloten door",
"modalreason":"Wat is de reden om dit ticket te sluiten?", "modalreason":"Wat is de reden om dit ticket te sluiten?",
"chooseATicket": "Kies een ticket" "chooseATicket": "Kies een ticket"
}, },
+16 -2
View File
@@ -23,11 +23,18 @@
"renameTitle":"Changed the name to {0}!", "renameTitle":"Changed the name to {0}!",
"closeTitle":"Closed this ticket!", "closeTitle":"Closed this ticket!",
"deleteTitle":"Deleting this ticket...", "deleteTitle":"Deleting this ticket...",
"reopenTitle":"Re-Opened this ticket!",
"claimTitle":"This ticket is now claimed to {0}", "claimTitle":"This ticket is now claimed to {0}",
"unclaimTitle":"This ticket isn't claimed anymore!", "unclaimTitle":"This ticket isn't claimed anymore!",
"changeTitle":"Changed ticket type to {0}!", "changeTitle":"Changed ticket type to {0}!",
"statsTitle":"Here are the stats for {0}!",
"autocloseTitle":"This ticket will be closed automatically after {0}!",
"autocloseRejectTitle":"This ticket will no longer be closed automatically!",
"autocloseWarn":"This only affects inactive tickets!",
"goToTicket":"go to ticket",
"ticketWarning":"The embed is in the message below!", "ticketWarning":"The embed is in the message below!",
"maxTicketWarning":"**Warning:** _You can only create {0} ticket(s) at a time!_" "maxTicketWarning":"**Warning:** _You can only create {0} ticket(s) at a time!_"
}, },
@@ -42,7 +49,12 @@
"deleteCmd":"Delete a ticket.", "deleteCmd":"Delete a ticket.",
"addCmd":"Add a user to the ticket.", "addCmd":"Add a user to the ticket.",
"removeCmd":"Remove a user from the ticket.", "removeCmd":"Remove a user from the ticket.",
"reopenCmd":"Re-Open a ticket after it was closed." "reopenCmd":"Re-Open a ticket after it was closed.",
"changeCmd":"Change ticket type.",
"claimCmd":"Claim a ticket.",
"unclaimCmd":"Unclaim a ticket.",
"statsCmd":"View ticket stats.",
"autocloseCmd":"Set timer to automatically close ticket"
}, },
"buttons":{ "buttons":{
"close":"Close Ticket", "close":"Close Ticket",
@@ -68,9 +80,11 @@
"none":"none", "none":"none",
"reason":"reason", "reason":"reason",
"createdat":"created at",
"openedby":"opened by",
"deletedby":"deleted by", "deletedby":"deleted by",
"closedby":"closed by", "closedby":"closed by",
"modalreason":"What is the reason for closing this ticket?", "modalreason":"What is the reason for closing this ticket?",
"chooseATicket": "Choose a ticket" "chooseATicket": "Choose a ticket"
}, },
+16 -2
View File
@@ -23,11 +23,18 @@
"renameTitle":"Changement du nom en {0}!", "renameTitle":"Changement du nom en {0}!",
"closeTitle":"Fermé ce ticket!", "closeTitle":"Fermé ce ticket!",
"deleteTitle":"Suppression de ce ticket...", "deleteTitle":"Suppression de ce ticket...",
"reopenTitle":"A rouvert ce ticket!",
"claimTitle":"This ticket is now claimed to {0}", "claimTitle":"This ticket is now claimed to {0}",
"unclaimTitle":"This ticket isn't claimed anymore!", "unclaimTitle":"This ticket isn't claimed anymore!",
"changeTitle":"Changed ticket type to {0}!", "changeTitle":"Changed ticket type to {0}!",
"statsTitle":"Here are the stats for {0}!",
"autocloseTitle":"This ticket will be closed automatically after {0}!",
"autocloseRejectTitle":"This ticket will no longer be closed automatically!",
"autocloseWarn":"This only affects inactive tickets!",
"goToTicket":"go to ticket",
"ticketWarning":"L'intégration est dans le message ci-dessous!", "ticketWarning":"L'intégration est dans le message ci-dessous!",
"maxTicketWarning":"**Attention :** _Vous ne pouvez créer que {0} ticket(s) à la fois !_" "maxTicketWarning":"**Attention :** _Vous ne pouvez créer que {0} ticket(s) à la fois !_"
}, },
@@ -42,7 +49,12 @@
"deleteCmd":"Supprimer un billet.", "deleteCmd":"Supprimer un billet.",
"addCmd":"Ajouter un utilisateur au ticket.", "addCmd":"Ajouter un utilisateur au ticket.",
"removeCmd":"Supprimer un utilisateur du ticket.", "removeCmd":"Supprimer un utilisateur du ticket.",
"reopenCmd":"Rouvrir un ticket après sa clôture." "reopenCmd":"Rouvrir un ticket après sa clôture.",
"changeCmd":"Change ticket type.",
"claimCmd":"Claim a ticket.",
"unclaimCmd":"Unclaim a ticket.",
"statsCmd":"View ticket stats.",
"autocloseCmd":"Set timer to automatically close ticket"
}, },
"buttons":{ "buttons":{
"close":"Fermer le ticket", "close":"Fermer le ticket",
@@ -68,9 +80,11 @@
"none":"rien", "none":"rien",
"reason":"raison", "reason":"raison",
"createdat":"created at",
"openedby":"opened by",
"deletedby":"supprimé par", "deletedby":"supprimé par",
"closedby":"fermé par", "closedby":"fermé par",
"modalreason":"Qu’elle est la raison pour fermer ce ticket?", "modalreason":"Qu’elle est la raison pour fermer ce ticket?",
"chooseATicket": "Choisir un ticket" "chooseATicket": "Choisir un ticket"
}, },
+19 -5
View File
@@ -23,11 +23,18 @@
"renameTitle":"Der Name wurde geändert!", "renameTitle":"Der Name wurde geändert!",
"closeTitle":"Dieses Ticket schließen!", "closeTitle":"Dieses Ticket schließen!",
"deleteTitle":"Löschen Sie dieses Ticket!", "deleteTitle":"Löschen Sie dieses Ticket!",
"reopenTitle":"Öffne dieses Ticket erneut!",
"claimTitle":"Das Ticket wurde beansprucht von {0}", "claimTitle":"Dieses Ticket wurde beansprucht von {0}",
"unclaimTitle":"Das Ticket wrid nicht mehr beansprucht", "unclaimTitle":"Dieses Ticket wird nichtmehr beansprucht.",
"changeTitle":"Ticket Typ wurde geändert auf {0}!", "changeTitle":"Ticket Typ wurde geändert zu {0}!",
"statsTitle":"Hier sind die Stats für {0}!",
"autocloseTitle":"Dieses Ticket wird automatisch geschlossen in {0}!",
"autocloseRejectTitle":"Dieses Ticket wird nichtmehr automatisch geschlossen",
"autocloseWarn":"Dies betrifft nur inaktive Tickets!",
"goToTicket":"Geh zu deinem Ticket",
"ticketWarning":"Die Einbettung befindet sich in der Nachricht unten!", "ticketWarning":"Die Einbettung befindet sich in der Nachricht unten!",
"maxTicketWarning":"**Warnung:** _Sie können nur {0} ticket(s) erstellen zu einer Zeit!_" "maxTicketWarning":"**Warnung:** _Sie können nur {0} ticket(s) erstellen zu einer Zeit!_"
}, },
@@ -42,7 +49,12 @@
"deleteCmd":"Ein Ticket löschen.", "deleteCmd":"Ein Ticket löschen.",
"addCmd":"Fügen Sie dem Ticket einen Benutzer hinzu.", "addCmd":"Fügen Sie dem Ticket einen Benutzer hinzu.",
"removeCmd":"Entfernen eines Benutzers aus dem Ticket.", "removeCmd":"Entfernen eines Benutzers aus dem Ticket.",
"reopenCmd":"Öffnen Sie ein Ticket erneut, nachdem es geschlossen wurde." "reopenCmd":"Öffnen Sie ein Ticket erneut, nachdem es geschlossen wurde.",
"changeCmd":"Ticket Typ ändern",
"claimCmd":"Ticket beanspruchen",
"unclaimCmd":"Ticket nicht mehr beanspruchen.",
"statsCmd":"Ticket Stats",
"autocloseCmd":"Timer wurde gesetzt auf automatisches schließen des Tickets"
}, },
"buttons":{ "buttons":{
"close":"Ticket schließen", "close":"Ticket schließen",
@@ -68,9 +80,11 @@
"none":"none", "none":"none",
"reason":"Grund", "reason":"Grund",
"createdat":"Erstellt um",
"openedby":"Geöffnet um",
"deletedby":"Gelöscht von", "deletedby":"Gelöscht von",
"closedby":"Geschlossen von", "closedby":"Geschlossen von",
"modalreason":"Was ist der Grund?", "modalreason":"Was ist der Grund?",
"chooseATicket": "Wähle ein passendes Thema!" "chooseATicket": "Wähle ein passendes Thema!"
}, },
+18 -4
View File
@@ -23,11 +23,18 @@
"renameTitle":"Cambiato il nome a {0}!", "renameTitle":"Cambiato il nome a {0}!",
"closeTitle":"Ticket chiuso!", "closeTitle":"Ticket chiuso!",
"deleteTitle":"Eliminando questo ticket...", "deleteTitle":"Eliminando questo ticket...",
"reopenTitle":"Ri-aperto questo ticket!",
"claimTitle":"Questo ticket è ora gestito da {0}", "claimTitle":"Questo ticket adesso è gestito da {0}",
"unclaimTitle":"Questo ticket non è più gestito!", "unclaimTitle":"Questo ticket non è più gestito!",
"changeTitle":"Cambiato il tipo di ticket in {0}!", "changeTitle":"Ticket cambiato in {0}!",
"statsTitle":"Queste sono le stats per {0}!",
"autocloseTitle":"Questo ticket sarà eliminato direttamente dopo {0}!",
"autocloseRejectTitle":"Questo ticket non sarà più chiuso automaticamente!",
"autocloseWarn":"Questo vale solo per i ticket inattivi!",
"goToTicket":"vai al ticket",
"ticketWarning":"L'embed è nel messaggio sotto!", "ticketWarning":"L'embed è nel messaggio sotto!",
"maxTicketWarning":"*Attenzione:* Tu puoi creare solo {0} ticket alla volta!" "maxTicketWarning":"*Attenzione:* Tu puoi creare solo {0} ticket alla volta!"
}, },
@@ -42,7 +49,12 @@
"deleteCmd":"Elimina un ticket.", "deleteCmd":"Elimina un ticket.",
"addCmd":"Aggiungi un utente al ticket.", "addCmd":"Aggiungi un utente al ticket.",
"removeCmd":"Rimuovi un utente da un ticket.", "removeCmd":"Rimuovi un utente da un ticket.",
"reopenCmd":"Ri-apri un ticket dopo averlo chiuso." "reopenCmd":"Ri-apri un ticket dopo averlo chiuso.",
"changeCmd":"Cambia tipo di ticket.",
"claimCmd":"Gestisci un ticket.",
"unclaimCmd":"Lascia la gestione del ticket.",
"statsCmd":"Vedi le statistiche dei ticket.",
"autocloseCmd":"Imposta il timer dell'autochiusura dei ticket"
}, },
"buttons":{ "buttons":{
"close":"Chiudi", "close":"Chiudi",
@@ -68,9 +80,11 @@
"none":"nessuno", "none":"nessuno",
"reason":"motivo", "reason":"motivo",
"createdat":"creato il",
"openedby":"aperto da",
"deletedby":"eliminato da", "deletedby":"eliminato da",
"closedby":"chiuso da", "closedby":"chiuso da",
"modalreason":"Quale è il motivo per chiudere questo ticket?", "modalreason":"Quale è il motivo per chiudere questo ticket?",
"chooseATicket": "Scegli un ticket" "chooseATicket": "Scegli un ticket"
}, },
+19 -5
View File
@@ -23,11 +23,18 @@
"renameTitle":"Zmieniono nazwę na {0}!", "renameTitle":"Zmieniono nazwę na {0}!",
"closeTitle":"Zamknięto ten ticket!", "closeTitle":"Zamknięto ten ticket!",
"deleteTitle":"Usuwanie tego zgłoszenia..", "deleteTitle":"Usuwanie tego zgłoszenia..",
"reopenTitle":"Ponownie otwarto ten ticket!",
"claimTitle":"Tym ticketem zajmuje się {0}", "claimTitle":"Ten ticket został odebrany przez {0}",
"unclaimTitle":"Ten ticket nie jest już odbierany!", "unclaimTitle":"Nie można już odebrać tego biletu!",
"changeTitle":"Zmieniono typ biletu na {0}!", "changeTitle":"Changed ticket type to {0}!",
"statsTitle":"Oto statystyki dotyczące {0}!",
"autocloseTitle":"Ten ticket zostanie automatycznie zamknięty po {0}!",
"autocloseRejectTitle":"Ten ticket nie będzie już automatycznie zamykany!",
"autocloseWarn":"Dotyczy to tylko nieaktywnych biletów!",
"goToTicket":"Przejdź do ticketa",
"ticketWarning":"Osadzenie znajduje się w wiadomości poniżej!", "ticketWarning":"Osadzenie znajduje się w wiadomości poniżej!",
"maxTicketWarning":"**Ostrzeżenie:** _Możesz utworzyć tylko {0} bilet(ów) na raz!_" "maxTicketWarning":"**Ostrzeżenie:** _Możesz utworzyć tylko {0} bilet(ów) na raz!_"
}, },
@@ -42,7 +49,12 @@
"deleteCmd":"Skasuj ticket.", "deleteCmd":"Skasuj ticket.",
"addCmd":"Dodaj użytkownika do zgłoszenia.", "addCmd":"Dodaj użytkownika do zgłoszenia.",
"removeCmd":"Usuń użytkownika ze zgłoszenia.", "removeCmd":"Usuń użytkownika ze zgłoszenia.",
"reopenCmd":"Otwórz ponownie ticket po jego zamknięciu." "reopenCmd":"Otwórz ponownie ticket po jego zamknięciu.",
"changeCmd":"Zmień typ ticketa.",
"claimCmd":"Odbierz ticket.",
"unclaimCmd":"Zrezygnuj z ticketa.",
"statsCmd":"Pokaż statystyki zgłoszenia.",
"autocloseCmd":"Ustaw timer, aby automatycznie zamykał ticket."
}, },
"buttons":{ "buttons":{
"close":"Zamknij", "close":"Zamknij",
@@ -68,9 +80,11 @@
"none":"brak", "none":"brak",
"reason":"powód", "reason":"powód",
"createdat":"utworzony",
"openedby":"otwarte przez",
"deletedby":"skasowane przez", "deletedby":"skasowane przez",
"closedby":"zamknięte przez", "closedby":"zamknięte przez",
"modalreason":"Jaki jest powód zamknięcia tego zgłoszenia?", "modalreason":"Jaki jest powód zamknięcia tego zgłoszenia?",
"chooseATicket": "Wybierz zgłoszenie" "chooseATicket": "Wybierz zgłoszenie"
}, },
+19 -6
View File
@@ -23,11 +23,18 @@
"renameTitle":"Mudou o nome para {0}!", "renameTitle":"Mudou o nome para {0}!",
"closeTitle":"Fechado este ticket!", "closeTitle":"Fechado este ticket!",
"deleteTitle":"Excluindo este ticket...", "deleteTitle":"Excluindo este ticket...",
"reopenTitle":"Reabriu este ticket!",
"claimTitle":"This ticket is now claimed to {0}", "claimTitle":"Esse ticket foi reinvidicado {0}",
"unclaimTitle":"This ticket isn't claimed anymore!", "unclaimTitle":"Esse ticket não foi reinvidicado!",
"changeTitle":"Changed ticket type to {0}!", "changeTitle":"Tipo de ticket alterado para {0}!",
"statsTitle":"Aqui estão as estatísticas para {0}!",
"autocloseTitle":"Este ticket vai fechar altomaticamente após {0}!",
"autocloseRejectTitle":"Este ticket não será mais fechado automaticamente!",
"autocloseWarn":"Isso apenas afeta tickets inativos!",
"goToTicket":"ir para ticket",
"ticketWarning":"A incorporação está na mensagem abaixo!", "ticketWarning":"A incorporação está na mensagem abaixo!",
"maxTicketWarning":"**Cuidado:** _Você só pode criar {0} ticket(s) de cada vez!!_" "maxTicketWarning":"**Cuidado:** _Você só pode criar {0} ticket(s) de cada vez!!_"
}, },
@@ -42,7 +49,12 @@
"deleteCmd":"Excluir um ticket.", "deleteCmd":"Excluir um ticket.",
"addCmd":"Adicionar um usuário ao ticket.", "addCmd":"Adicionar um usuário ao ticket.",
"removeCmd":"Remover um usuário do ticket.", "removeCmd":"Remover um usuário do ticket.",
"reopenCmd":"Reabra um ticket depois que ele foi fechado." "reopenCmd":"Reabra um ticket depois que ele foi fechado.",
"changeCmd":"Mudar tipo de ticket",
"claimCmd":"Resgatar Ticket",
"unclaimCmd":"Desresgatar Ticket",
"statsCmd":"Olhar status do ticket",
"autocloseCmd":"Definir tempo para fechar ticket automaticamente."
}, },
"buttons":{ "buttons":{
"close":"Fechar Ticket", "close":"Fechar Ticket",
@@ -68,11 +80,12 @@
"none":"vazio", "none":"vazio",
"reason":"motivo", "reason":"motivo",
"createdat":"Criado por:",
"openedby":"Aberto por:",
"deletedby":"deletado por", "deletedby":"deletado por",
"closedby":"fechado por", "closedby":"fechado por",
"modalreason":"Qual o motivo de fechar o ticket?",
"modalreason":"Qual o motivo de fechar o ticket?",
"chooseATicket": "Fechar Ticket" "chooseATicket": "Fechar Ticket"
}, },
"transcripts":{ "transcripts":{
+19 -5
View File
@@ -23,11 +23,18 @@
"renameTitle":"Nume schimbat in {0}!", "renameTitle":"Nume schimbat in {0}!",
"closeTitle":"Ticket inchis!", "closeTitle":"Ticket inchis!",
"deleteTitle":"Se sterge ticket-ul...", "deleteTitle":"Se sterge ticket-ul...",
"reopenTitle":"Ticket Re-deschis!",
"claimTitle":"This ticket is now claimed to {0}", "claimTitle":"Acest ticket a primit claim de la {0}",
"unclaimTitle":"This ticket isn't claimed anymore!", "unclaimTitle":"Acest ticket nu mai este detinut!",
"changeTitle":"Changed ticket type to {0}!", "changeTitle":"A fost schimbat tipul ticket-ului la {0}!",
"statsTitle":"Acestea sunt informatiile pentru {0}!",
"autocloseTitle":"Acest ticket va fi inchis automat dupa {0}!",
"autocloseRejectTitle":"Acest ticket nu va mai fi inchis automat!",
"autocloseWarn":"Aceasta optiune afecteaza numai ticketele inactive!",
"goToTicket":"Mergi la ticket",
"ticketWarning":"Embed-ul se afla in mesajul de mai jos!", "ticketWarning":"Embed-ul se afla in mesajul de mai jos!",
"maxTicketWarning":"**Avertizare:** _Poti creea doar {0} tickete active!_" "maxTicketWarning":"**Avertizare:** _Poti creea doar {0} tickete active!_"
}, },
@@ -42,7 +49,12 @@
"deleteCmd":"Sterge un ticket.", "deleteCmd":"Sterge un ticket.",
"addCmd":"Adauga un utilizator in ticket.", "addCmd":"Adauga un utilizator in ticket.",
"removeCmd":"Sterge un utilizator din ticket.", "removeCmd":"Sterge un utilizator din ticket.",
"reopenCmd":"Re-deschide un ticket dupa ce a fost deschis." "reopenCmd":"Re-deschide un ticket dupa ce a fost deschis.",
"changeCmd":"Schimba categoria ticket-ului.",
"claimCmd":"Revendica un ticket",
"unclaimCmd":"Anuleaza revendicarea unui ticket.",
"statsCmd":"Afiseasa informatiile ticket-ului.",
"autocloseCmd":"Seteaza un cronometru pentru inchiderea ticket-ului."
}, },
"buttons":{ "buttons":{
"close":"Inchide ticket-ul", "close":"Inchide ticket-ul",
@@ -68,9 +80,11 @@
"none":"niciunul", "none":"niciunul",
"reason":"Motiv", "reason":"Motiv",
"createdat":"Creat la",
"openedby":"Deschis de",
"deletedby":"Sters de", "deletedby":"Sters de",
"closedby":"Inchis de", "closedby":"Inchis de",
"modalreason":"Care este motivul pentru inchiderea acestui ticket?", "modalreason":"Care este motivul pentru inchiderea acestui ticket?",
"chooseATicket": "Alege un ticket" "chooseATicket": "Alege un ticket"
}, },
+16 -2
View File
@@ -23,11 +23,18 @@
"renameTitle":"Изменено имя на {0}!", "renameTitle":"Изменено имя на {0}!",
"closeTitle":"Закрыл этот тикет!", "closeTitle":"Закрыл этот тикет!",
"deleteTitle":"Удаляем этот тикет...", "deleteTitle":"Удаляем этот тикет...",
"reopenTitle":"Открываем заново этот тикет!",
"claimTitle":"Этот тикет теперь взят {0}", "claimTitle":"Этот тикет теперь взят {0}",
"unclaimTitle":"Этот тикет никем не взят!", "unclaimTitle":"Этот тикет никем не взят!",
"changeTitle":"Изменён тип тикета на {0}!", "changeTitle":"Изменён тип тикета на {0}!",
"statsTitle":"Here are the stats for {0}!",
"autocloseTitle":"This ticket will be closed automatically after {0}!",
"autocloseRejectTitle":"This ticket will no longer be closed automatically!",
"autocloseWarn":"This only affects inactive tickets!",
"goToTicket":"go to ticket",
"ticketWarning":"embed ниже сообщения!", "ticketWarning":"embed ниже сообщения!",
"maxTicketWarning":"**Предупреждение:** _Вы можете создать только {0} тикет(а/ов) в этот раз!_" "maxTicketWarning":"**Предупреждение:** _Вы можете создать только {0} тикет(а/ов) в этот раз!_"
}, },
@@ -42,7 +49,12 @@
"deleteCmd":"Удалить тикет.", "deleteCmd":"Удалить тикет.",
"addCmd":"Добавить пользователя в тикет.", "addCmd":"Добавить пользователя в тикет.",
"removeCmd":"Удалить пользователя из тикета.", "removeCmd":"Удалить пользователя из тикета.",
"reopenCmd":"Открыть заново тикет после того, как он был закрыт." "reopenCmd":"Открыть заново тикет после того, как он был закрыт.",
"changeCmd":"Change ticket type.",
"claimCmd":"Claim a ticket.",
"unclaimCmd":"Unclaim a ticket.",
"statsCmd":"View ticket stats.",
"autocloseCmd":"Set timer to automatically close ticket"
}, },
"buttons":{ "buttons":{
"close":"Закрыть тикет", "close":"Закрыть тикет",
@@ -68,9 +80,11 @@
"none":"отсутствует", "none":"отсутствует",
"reason":"причина", "reason":"причина",
"createdat":"created at",
"openedby":"opened by",
"deletedby":"удалён", "deletedby":"удалён",
"closedby":"закрыт", "closedby":"закрыт",
"modalreason":"Какая причина закрытия этого тикета?", "modalreason":"Какая причина закрытия этого тикета?",
"chooseATicket": "Выберите тикет" "chooseATicket": "Выберите тикет"
}, },
+19 -5
View File
@@ -23,11 +23,18 @@
"renameTitle":"Cambió el nombre a {0}!", "renameTitle":"Cambió el nombre a {0}!",
"closeTitle":"Cerró este ticket!", "closeTitle":"Cerró este ticket!",
"deleteTitle":"Eliminando este ticket...", "deleteTitle":"Eliminando este ticket...",
"reopenTitle":"Re-abrió este boleto!",
"claimTitle":"Este ticket será atendido por {0}", "claimTitle":"Este ticket fué reclamado por {0}",
"unclaimTitle":"¡Este ticket ya no está reservado!", "unclaimTitle":"¡Este ticket se encuentra desatendido!",
"changeTitle":"¡Cambiando el tipo de ticket a {0}!", "changeTitle":"¡Cambiado el tipo de ticket a {0}!",
"statsTitle":"¡Aquí están las estadísticas para {0}!",
"autocloseTitle":"¡Este ticket será cerrado después de {0}!",
"autocloseRejectTitle":"¡Cierre automático del ticket desactivado!",
"autocloseWarn":"¡Esto solo afecta tickets inactivos!",
"goToTicket":"ir al ticket",
"ticketWarning":"La inserción está en el mensaje a continuación!", "ticketWarning":"La inserción está en el mensaje a continuación!",
"maxTicketWarning":"**Advertencia:** _Solo puedes crear {0} ticket(s) a la vez!_" "maxTicketWarning":"**Advertencia:** _Solo puedes crear {0} ticket(s) a la vez!_"
}, },
@@ -42,7 +49,12 @@
"deleteCmd":"Eliminar un ticket.", "deleteCmd":"Eliminar un ticket.",
"addCmd":"Agregar un usuario al ticket.", "addCmd":"Agregar un usuario al ticket.",
"removeCmd":"Eliminar un usuario del ticket.", "removeCmd":"Eliminar un usuario del ticket.",
"reopenCmd":"Re-Abre un ticket después de que este se vea cerrado." "reopenCmd":"Re-Abre un ticket después de que este se vea cerrado.",
"changeCmd":"Cambia el tipo de ticket.",
"claimCmd":"Reclama un ticket.",
"unclaimCmd":"Desatiende un ticket.",
"statsCmd":"Mira las estadísticas de los tickets.",
"autocloseCmd":"Establece un temporizador para cerrar el ticket."
}, },
"buttons":{ "buttons":{
"close":"Cerrar ticket.", "close":"Cerrar ticket.",
@@ -68,9 +80,11 @@
"none":"Ninguna.", "none":"Ninguna.",
"reason":"Razón", "reason":"Razón",
"createdat":"creado el",
"openedby":"abierto por",
"deletedby":"eliminado por", "deletedby":"eliminado por",
"closedby":"cerrado por", "closedby":"cerrado por",
"modalreason":"Cúal es la razón para cerrar este ticket?", "modalreason":"Cúal es la razón para cerrar este ticket?",
"chooseATicket": "Elije un ticket" "chooseATicket": "Elije un ticket"
}, },
+16 -2
View File
@@ -23,11 +23,18 @@
"renameTitle":"Bilet ismi {0} olarak değştirildi!", "renameTitle":"Bilet ismi {0} olarak değştirildi!",
"closeTitle":"Bilet Kapatıldı!", "closeTitle":"Bilet Kapatıldı!",
"deleteTitle":"Bilet siliniyor...", "deleteTitle":"Bilet siliniyor...",
"reopenTitle":"Bilet Yeniden Açıldı!",
"claimTitle":"Bu bilet artık talep edildi. {0}", "claimTitle":"Bu bilet artık talep edildi. {0}",
"unclaimTitle":"Tu bilet artık talep edilmiyor!", "unclaimTitle":"Tu bilet artık talep edilmiyor!",
"changeTitle":"Bu bilet türü {0} olarak değiştirildi!", "changeTitle":"Bu bilet türü {0} olarak değiştirildi!",
"statsTitle":"Here are the stats for {0}!",
"autocloseTitle":"This ticket will be closed automatically after {0}!",
"autocloseRejectTitle":"This ticket will no longer be closed automatically!",
"autocloseWarn":"This only affects inactive tickets!",
"goToTicket":"go to ticket",
"ticketWarning":"Gömme aşağıdaki mesajda yer almaktadır!", "ticketWarning":"Gömme aşağıdaki mesajda yer almaktadır!",
"maxTicketWarning":"**Uyarı:** _You can only create {0} ticket(s) at a time!_" "maxTicketWarning":"**Uyarı:** _You can only create {0} ticket(s) at a time!_"
}, },
@@ -42,7 +49,12 @@
"deleteCmd":"Bileti siler.", "deleteCmd":"Bileti siler.",
"addCmd":"Bilete kullanıcı ekler.", "addCmd":"Bilete kullanıcı ekler.",
"removeCmd":"Biletten kullanıcı çıkarır.", "removeCmd":"Biletten kullanıcı çıkarır.",
"reopenCmd":"Bilet kapandıktan sonra tekrar açar." "reopenCmd":"Bilet kapandıktan sonra tekrar açar.",
"changeCmd":"Change ticket type.",
"claimCmd":"Claim a ticket.",
"unclaimCmd":"Unclaim a ticket.",
"statsCmd":"View ticket stats.",
"autocloseCmd":"Set timer to automatically close ticket"
}, },
"buttons":{ "buttons":{
"close":"Bileti Kapat", "close":"Bileti Kapat",
@@ -68,9 +80,11 @@
"none":"yok", "none":"yok",
"reason":"sebep", "reason":"sebep",
"createdat":"created at",
"openedby":"opened by",
"deletedby":"Silen kişi", "deletedby":"Silen kişi",
"closedby":"Kapatan kişi", "closedby":"Kapatan kişi",
"modalreason":"Bu biletin kapanmasının sebebi nedir?", "modalreason":"Bu biletin kapanmasının sebebi nedir?",
"chooseATicket": "Bir bilet seçin" "chooseATicket": "Bir bilet seçin"
}, },