Open Ticket v3.5.2
Open Ticket v3.5.2
This commit is contained in:
+4
-4
@@ -10,11 +10,11 @@ We only support Open Ticket versions listed below! With support, we mean bugs, e
|
||||
|
||||
| Version | Supported |
|
||||
|-----------|-------------------|
|
||||
| 3.5.2 | ✅ |
|
||||
| 3.5.1 | ✅ |
|
||||
| 3.5.0 | ✅ |
|
||||
| 3.4.4 | ✅ |
|
||||
| 3.4.3 | 🟧 |
|
||||
| 3.4.2 | 🟧 |
|
||||
| < 3.4.2 | ❌ |
|
||||
| 3.4.4 | 🟧 |
|
||||
| < 3.4.4 | ❌ |
|
||||
|
||||
## Reporting a Vulnerability
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ There will be massive improvements for more stability & features! But the best p
|
||||
|
||||
<img src="https://apis.dj-dj.be/cdn/openticket/logo.png" alt="Open Ticket" width="600px">
|
||||
|
||||
[](https://discord.com/invite/26vT9wt3n3) [](https://github.com/DJj123dj/open-ticket/releases/tag/v3.5.0) []() [](https://github.com/DJj123dj/open-ticket/blob/main/LICENSE) [](https://docs.openticket.dj-dj.be)
|
||||
[](https://discord.com/invite/26vT9wt3n3) [](https://github.com/DJj123dj/open-ticket/releases/tag/v3.5.2) []() [](https://github.com/DJj123dj/open-ticket/blob/main/LICENSE) [](https://docs.openticket.dj-dj.be)
|
||||
|
||||
### Open Ticket
|
||||
Open Ticket is the most customisable discord ticket bot that you will ever find! There are more than 150 options to customise in the config! This includes html transcripts, unlimited amount of tickets, custom embeds & more! Did you know that even the html transcripts are highly customisable? Don't wait and check it out! If you're having trouble setting the bot up, feel free to join our support server and we will help you further!
|
||||
@@ -58,7 +58,7 @@ Take a look at all the features and discover the possibilities!
|
||||
|-------------------|--------------------------|--------------------------------|
|
||||
|English |djj123dj |🟢 Up To Date |
|
||||
|Dutch |djj123dj |🟢 Up To Date |
|
||||
|French |sankedev |🟢 Up To Date |
|
||||
|French |sankedev & tostam |🟢 Up To Date |
|
||||
|Romanian |sankedev |🟢 Up To Date |
|
||||
|Spanish |redactado & josuens |🟢 Up To Date |
|
||||
|German |david.3 |🟢 Up To Date |
|
||||
@@ -75,9 +75,10 @@ Take a look at all the features and discover the possibilities!
|
||||
|Thai |modshd |🟢 Up To Date |
|
||||
|Norwegian |noonenook |🟢 Up To Date |
|
||||
|Greek |stefanos__. |🔴 Outdated |
|
||||
|Indonesian |erxg |🟢 Up To Date |
|
||||
|
||||
## links
|
||||
current version: _v3.5.0_
|
||||
current version: _v3.5.2_
|
||||
</br>changelog: [click here](https://otgithub.dj-dj.be/releases)
|
||||
</br>documentation: [click here](https://docs.openticket.dj-dj.be/quick-start)
|
||||
|
||||
|
||||
+1
-1
@@ -49,7 +49,7 @@ module.exports = () => {
|
||||
if (!interaction.guild) return
|
||||
|
||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
||||
if (hiddendata.length < 1) return interaction.editReply({embeds:[bot.errorLog.notInATicket]})
|
||||
if (hiddendata.length < 1) return interaction.reply({embeds:[bot.errorLog.notInATicket]})
|
||||
const ticketId = hiddendata.find(d => d.key == "type").value
|
||||
|
||||
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
||||
|
||||
+1
-1
@@ -79,7 +79,7 @@ module.exports = () => {
|
||||
if (!interaction.guild) return
|
||||
|
||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
||||
if (hiddendata.length < 1) return interaction.editReply({embeds:[bot.errorLog.notInATicket]})
|
||||
if (hiddendata.length < 1) return interaction.reply({embeds:[bot.errorLog.notInATicket]})
|
||||
const ticketId = hiddendata.find(d => d.key == "type").value
|
||||
|
||||
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
||||
|
||||
+1
-1
@@ -67,7 +67,7 @@ module.exports = () => {
|
||||
if (!interaction.guild) return
|
||||
|
||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
||||
if (hiddendata.length < 1) return interaction.editReply({embeds:[bot.errorLog.notInATicket]})
|
||||
if (hiddendata.length < 1) return interaction.reply({embeds:[bot.errorLog.notInATicket]})
|
||||
const ticketId = hiddendata.find(d => d.key == "type").value
|
||||
|
||||
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
||||
|
||||
+5
-3
@@ -57,13 +57,15 @@ module.exports = () => {
|
||||
|
||||
const reason = interaction.options.getString("reason") ? interaction.options.getString("reason") : false
|
||||
|
||||
await interaction.deferReply()
|
||||
|
||||
|
||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
||||
if (hiddendata.length < 1) return interaction.editReply({embeds:[bot.errorLog.notInATicket]})
|
||||
if (hiddendata.length < 1) return interaction.reply({embeds:[bot.errorLog.notInATicket]})
|
||||
const ticketId = hiddendata.find(d => d.key == "type").value
|
||||
|
||||
if (hiddendata.find(h => h.key == "pendingdelete")) return interaction.editReply({embeds:[bot.errorLog.warning("Warning!","You can't close a ticket while it's being deleted!")]})
|
||||
if (hiddendata.find(h => h.key == "pendingdelete")) return interaction.reply({embeds:[bot.errorLog.warning("Warning!","You can't close a ticket while it's being deleted!")]})
|
||||
|
||||
await interaction.deferReply()
|
||||
|
||||
const descriptionReason = reason ? "**"+l.messages.reason+":** "+reason : false
|
||||
interaction.editReply({embeds:[bot.embeds.commands.closeEmbed(interaction.user,descriptionReason)],components:[bot.buttons.close.closeCommandRow]})
|
||||
|
||||
+1
-1
@@ -51,7 +51,7 @@ module.exports = () => {
|
||||
if (!interaction.guild) return
|
||||
|
||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
||||
if (hiddendata.length < 1) return interaction.editReply({embeds:[bot.errorLog.notInATicket]})
|
||||
if (hiddendata.length < 1) return interaction.reply({embeds:[bot.errorLog.notInATicket]})
|
||||
const ticketId = hiddendata.find(d => d.key == "type").value
|
||||
|
||||
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
||||
|
||||
+1
-1
@@ -49,7 +49,7 @@ module.exports = () => {
|
||||
if (!interaction.guild) return
|
||||
|
||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
||||
if (hiddendata.length < 1) return interaction.editReply({embeds:[bot.errorLog.notInATicket]})
|
||||
if (hiddendata.length < 1) return interaction.reply({embeds:[bot.errorLog.notInATicket]})
|
||||
const ticketId = hiddendata.find(d => d.key == "type").value
|
||||
|
||||
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
||||
|
||||
+1
-1
@@ -55,7 +55,7 @@ module.exports = () => {
|
||||
if (!interaction.guild) return
|
||||
|
||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
||||
if (hiddendata.length < 1) return interaction.editReply({embeds:[bot.errorLog.notInATicket]})
|
||||
if (hiddendata.length < 1) return interaction.reply({embeds:[bot.errorLog.notInATicket]})
|
||||
const ticketId = hiddendata.find(d => d.key == "type").value
|
||||
|
||||
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
||||
|
||||
+4
-4
@@ -33,13 +33,13 @@ module.exports = () => {
|
||||
if (!interaction.isChatInputCommand()) return
|
||||
if (interaction.commandName != "reopen") return
|
||||
|
||||
await interaction.deferReply()
|
||||
|
||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
||||
if (hiddendata.length < 1) return interaction.editReply({embeds:[bot.errorLog.notInATicket]})
|
||||
if (hiddendata.length < 1) return interaction.reply({embeds:[bot.errorLog.notInATicket]})
|
||||
const ticketId = hiddendata.find(d => d.key == "type").value
|
||||
|
||||
if (hiddendata.find(h => h.key == "pendingdelete")) return interaction.editReply({embeds:[bot.errorLog.warning("Warning!","You can't re-open a ticket while it's being deleted!")]})
|
||||
if (hiddendata.find(h => h.key == "pendingdelete")) return interaction.reply({embeds:[bot.errorLog.warning("Warning!","You can't re-open a ticket while it's being deleted!")]})
|
||||
|
||||
await interaction.deferReply()
|
||||
|
||||
await interaction.editReply({embeds:[bot.embeds.commands.reopenEmbed(interaction.user)],components:[bot.buttons.close.openRowNormal]})
|
||||
|
||||
|
||||
+1
-1
@@ -74,7 +74,7 @@ module.exports = () => {
|
||||
if (!interaction.guild) return
|
||||
|
||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
||||
if (hiddendata.length < 1) return interaction.editReply({embeds:[bot.errorLog.notInATicket]})
|
||||
if (hiddendata.length < 1) return interaction.reply({embeds:[bot.errorLog.notInATicket]})
|
||||
const ticketId = hiddendata.find(d => d.key == "type").value
|
||||
|
||||
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
||||
|
||||
+2
-2
@@ -53,7 +53,7 @@
|
||||
},
|
||||
"image":{
|
||||
"enable":false,
|
||||
"url":"https://www.dj-dj.be/wp-content/uploads/2022/09/pfp-cropped.png"
|
||||
"url":"https://www.example.com/catmemes/cat.png"
|
||||
},
|
||||
|
||||
"closedCategory":{
|
||||
@@ -111,7 +111,7 @@
|
||||
"dropdown":false,
|
||||
|
||||
"enableFooter":false,
|
||||
"footer":"Open Ticket v3.5.0 - I'm a footer!",
|
||||
"footer":"Open Ticket v3.5.2 - I'm a footer!",
|
||||
|
||||
"enableFooterImage":false,
|
||||
"footerImage":"https://www.example.com/catmemes/cat.png",
|
||||
|
||||
@@ -113,6 +113,12 @@ module.exports = async (messages,guild,channel,user,reason) => {
|
||||
if (!tc) return
|
||||
tc.send({embeds:[errembed],files:[attachment]})
|
||||
}
|
||||
if (tsconfig.sendTranscripts.enableDM && user){
|
||||
const embed = tsembeds.tsready(chName,chId,null,user)
|
||||
try {
|
||||
ticketopener.send({embeds:[embed],files:[attachment]})
|
||||
}catch{}
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
@@ -167,6 +173,12 @@ module.exports = async (messages,guild,channel,user,reason) => {
|
||||
if (!tc) return
|
||||
tc.send({embeds:[errembed],files:[attachment]})
|
||||
}
|
||||
if (tsconfig.sendTranscripts.enableDM && user){
|
||||
const embed = tsembeds.tsready(chName,chId,null,user)
|
||||
try {
|
||||
ticketopener.send({embeds:[embed],files:[attachment]})
|
||||
}catch{}
|
||||
}
|
||||
}
|
||||
}else{
|
||||
const attachment = await require("./oldTranscript").createTranscript(messages,channel)
|
||||
@@ -179,6 +191,12 @@ module.exports = async (messages,guild,channel,user,reason) => {
|
||||
if (!tc) return
|
||||
tc.send({embeds:[embed],files:[attachment]})
|
||||
}
|
||||
if (tsconfig.sendTranscripts.enableDM && user){
|
||||
const embed = tsembeds.tsready(chName,chId,null,user)
|
||||
try {
|
||||
ticketopener.send({embeds:[embed],files:[attachment]})
|
||||
}catch{}
|
||||
}
|
||||
}
|
||||
}
|
||||
asyncmanager()
|
||||
|
||||
@@ -189,7 +189,7 @@ exports.liveStatusUploadManager = async (err) => {
|
||||
//system:config.system
|
||||
},
|
||||
language:config.languageFile,
|
||||
version:"3.5.0",
|
||||
version:"3.5.2",
|
||||
slashcmds:slashMode,
|
||||
transcripts:transcriptMode,
|
||||
plugins:fs.readdirSync("./plugins"),
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
|
||||
INFORMATION:
|
||||
============
|
||||
Open Ticket v3.5.0 - © DJdj Development
|
||||
Open Ticket v3.5.2 - © DJdj Development
|
||||
|
||||
discord: https://discord.dj-dj.be
|
||||
website: https://www.dj-dj.be
|
||||
@@ -54,7 +54,7 @@ const client = new discord.Client({
|
||||
partials:[Partials.Channel,Partials.Message]
|
||||
})
|
||||
exports.client = client
|
||||
client.setMaxListeners(50)
|
||||
client.setMaxListeners(100)
|
||||
if (process.argv.some((v) => v == "--debug")) console.log("[TEMP_DEBUG]","created client")
|
||||
|
||||
//LOAD CONFIG
|
||||
@@ -396,7 +396,55 @@ this.actionRecorder.push({
|
||||
type:"debugsystem.success"
|
||||
})
|
||||
|
||||
//PARSE .env FILE FROM DOTENV LIB
|
||||
//npm i dotenv
|
||||
//https://github.com/motdotla/dotenv
|
||||
/**@param {Buffer} src */
|
||||
const loadFromDotEnv = (src) => {
|
||||
const LINE = /(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg
|
||||
|
||||
const obj = {}
|
||||
|
||||
// Convert buffer to string
|
||||
let lines = src.toString()
|
||||
|
||||
// Convert line breaks to same format
|
||||
lines = lines.replace(/\r\n?/mg, '\n')
|
||||
|
||||
let match
|
||||
while ((match = LINE.exec(lines)) != null) {
|
||||
const key = match[1]
|
||||
|
||||
// Default undefined or null to empty string
|
||||
let value = (match[2] || '')
|
||||
|
||||
// Remove whitespace
|
||||
value = value.trim()
|
||||
|
||||
// Check if double quoted
|
||||
const maybeQuote = value[0]
|
||||
|
||||
// Remove surrounding quotes
|
||||
value = value.replace(/^(['"`])([\s\S]*)\1$/mg, '$2')
|
||||
|
||||
// Expand newlines if double quoted
|
||||
if (maybeQuote === '"') {
|
||||
value = value.replace(/\\n/g, '\n')
|
||||
value = value.replace(/\\r/g, '\r')
|
||||
}
|
||||
|
||||
// Add to object
|
||||
obj[key] = value
|
||||
}
|
||||
process.env.TOKEN = obj.TOKEN
|
||||
}
|
||||
|
||||
//LOGIN SYSTEM
|
||||
const token = config.token.fromENV ? process.env.TOKEN : config.token.value
|
||||
client.login(token)
|
||||
if (config.token.fromENV){
|
||||
loadFromDotEnv(fs.readFileSync(".env"))
|
||||
client.login(process.env.TOKEN)
|
||||
}else{
|
||||
client.login(config.token.value)
|
||||
}
|
||||
|
||||
this.errorLog.log("debug","login with token")
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"ChilledBroke#9986 & M4#5882",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors": {
|
||||
"missingArgsTitle": "قيمة غير صالحة!",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"DJdj Development",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Invalid Arguments!",
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"spyeye_",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Neplatný Argument!",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"the_gamer#5095",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors": {
|
||||
"missingArgsTitle": "Ugyldigt Argument!",
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"DJj123dj#1706",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Onjuiste parameters!",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"DJdj Development",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Invalid Arguments!",
|
||||
|
||||
+56
-56
@@ -1,35 +1,35 @@
|
||||
{
|
||||
"_CREDITS":"Sanke#6086",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_CREDITS":"tostam",
|
||||
"_INFO":"Ce fichier est une traduction pour OpenTicket 3.5.0",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Arguments invalides !",
|
||||
"missingArgsDescription":"Argument manquant",
|
||||
"noPermsTitle":"Pas de permissions!",
|
||||
"missingArgsDescription":"Argument manquant !",
|
||||
"noPermsTitle":"Tu n'as pas les permissions requises !",
|
||||
"noPermsDescription":"Vous avez besoin de la permission `ADMINISTRATOR` ou être dans la liste des rôles autorisés !",
|
||||
"noPermsDelete":"Seuls les administrateurs peuvent supprimer un ticket!",
|
||||
"chooseFromListTitle":"Invalid ID",
|
||||
"noPermsDelete":"Seuls les staffs peuvent supprimer un ticket !",
|
||||
"chooseFromListTitle":"ID invalide !",
|
||||
"chooseFromListDescription":"Choisissez l'un des identifiants ci-dessous:",
|
||||
"boterror":"Bot Error!",
|
||||
"boterror":"Erreur du bot !",
|
||||
"notInTicketTitle":"Vous n'êtes pas dans un ticket !",
|
||||
"notInTicketDescription":"Cette commande ne fonctionne pas en dehors des tickets !",
|
||||
"ticketDoesntExist":"Ce ticket n'existe plus!",
|
||||
"roleDoesntExist":"Ce rôle n'existe plus!",
|
||||
"ticketDoesntExist":"Ce ticket n'existe pas !",
|
||||
"roleDoesntExist":"Ce rôle n'existe pas !",
|
||||
"anotherOption":"Cette option n'est pas un ticket mais un autre type !",
|
||||
"maxAmountTitle":"Montant maximum atteint!",
|
||||
"maxAmountTitle":"Montant maximum de ticket atteint !",
|
||||
"maxAmountDescription":"Vous avez atteint le nombre maximum de tickets autorisés !\nVous ne pouvez donc pas en créer un nouveau !",
|
||||
"somethingWentWrong":"**Quelque chose s'est mal passé !**\nVeuillez réessayer une autre fois !"
|
||||
},
|
||||
"commands":{
|
||||
"userAddedTitle":"{0} a été ajouté à ce ticket !",
|
||||
"userRemovedTitle":"Supprimé {0} de ce ticket!",
|
||||
"renameTitle":"Changement du nom en {0}!",
|
||||
"closeTitle":"Fermé ce ticket!",
|
||||
"userRemovedTitle":"{0} a été supprimé de ce ticket !",
|
||||
"renameTitle":"Changement de nom du ticket en {0} !",
|
||||
"closeTitle":"Ticket fermé",
|
||||
"deleteTitle":"Suppression de ce ticket...",
|
||||
"reopenTitle":"A rouvert ce ticket!",
|
||||
"reopenTitle":"Ticket réouvert",
|
||||
|
||||
"claimTitle":"Ce ticket est maintenant réclamé à {0}",
|
||||
"unclaimTitle":"Ce ticket n'est pas réclamé!",
|
||||
"claimTitle":"Ce ticket est maintenant réclamé par {0}",
|
||||
"unclaimTitle":"Ce ticket n'est plus réclamé !",
|
||||
"changeTitle":"Modification du type de ticket en {0} !",
|
||||
|
||||
"statsTitle":"Voici les statistiques pour {0} !",
|
||||
@@ -39,76 +39,76 @@
|
||||
|
||||
"goToTicket":"Aller au ticket",
|
||||
"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 seulement {0} ticket(s) à la fois !_"
|
||||
},
|
||||
"helpMenu":{
|
||||
"title":"Commandes disponibles :",
|
||||
"header1":"**Allez à {0} pour créer un ticket !**\n\n",
|
||||
"title":"Commandes disponibles :",
|
||||
"header1":"**Allez à {0} pour créer un ticket !**\n\n",
|
||||
"header2":"**Exécutez la commande `/new` ou `/ticket` pour créer un ticket !**\n\n",
|
||||
|
||||
"msgCmd":"Faire apparaître une intégration avec des boutons. (administrateurs uniquement)",
|
||||
"renameCmd":"Renommer un ticket. (sans espaces)",
|
||||
"closeCmd":"Fermer un ticket.",
|
||||
"deleteCmd":"Supprimer un billet.",
|
||||
"addCmd":"Ajouter un utilisateur au ticket.",
|
||||
"removeCmd":"Supprimer un utilisateur du ticket.",
|
||||
"reopenCmd":"Rouvrir un ticket après sa clôture.",
|
||||
"changeCmd":"Changer le type de ticket.",
|
||||
"claimCmd":"Réclamer un billet",
|
||||
"unclaimCmd":"Annuler la réclamation d'un ticket.",
|
||||
"statsCmd":"Afficher les statistiques des tickets.",
|
||||
"msgCmd":"Faire apparaître une intégration avec des boutons (administrateurs uniquement)",
|
||||
"renameCmd":"Renommer un ticket (sans espaces)",
|
||||
"closeCmd":"Fermer un ticket",
|
||||
"deleteCmd":"Supprimer un ticket",
|
||||
"addCmd":"Ajouter un utilisateur au ticket",
|
||||
"removeCmd":"Supprimer un utilisateur du ticket",
|
||||
"reopenCmd":"Réouvrir un ticket après sa clôture",
|
||||
"changeCmd":"Changer le type de ticket",
|
||||
"claimCmd":"Réclamer un ticket",
|
||||
"unclaimCmd":"Annuler la réclamation d'un ticket",
|
||||
"statsCmd":"Afficher les statistiques des tickets",
|
||||
"autocloseCmd":"Définir une minuterie pour fermer automatiquement le ticket"
|
||||
},
|
||||
"buttons":{
|
||||
"close":"Fermer le ticket",
|
||||
"delete":"Supprimer le billet",
|
||||
"reopen":"Billet de réouverture",
|
||||
"closeWithReason":"fermer avec une raison"
|
||||
"delete":"Supprimer le ticket",
|
||||
"reopen":"Réouvrir le ticket",
|
||||
"closeWithReason":"Fermer avec une raison"
|
||||
},
|
||||
"messages":{
|
||||
"closedDescription":"Seuls les administrateurs peuvent parler dans ce ticket maintenant !\n\n*Cliquez sur le bouton ci-dessous pour supprimer ou rouvrir ce ticket !*",
|
||||
"createdTitle":"Ticket créé !",
|
||||
"closedDescription":"Seuls les administrateurs peuvent parler dans ce ticket maintenant !\n\n*Cliquez sur le bouton ci-dessous pour supprimer ou réouvrir ce ticket !*",
|
||||
"createdTitle":"Ticket créé !",
|
||||
"createdDescription":"Votre ticket est créé, vous pouvez le détecter par un ping !",
|
||||
|
||||
"newTicketDmTitle":"Nouveau billet!",
|
||||
"closedTicketDmTitle":"Billet fermé!",
|
||||
"deletedTicketDmTitle":"Billet supprimé !",
|
||||
"closedTicketDmDescription":"Votre billet est fermé !",
|
||||
"deletedTicketDmDescription":"Votre billet est supprimé !",
|
||||
"reopenTicketDmTitle":"Billet rouvert!",
|
||||
"reopenTicketDmDescription":"Votre billet est rouvert !",
|
||||
"newTicketDmTitle":"Nouveau ticket !",
|
||||
"closedTicketDmTitle":"Ticket fermé !",
|
||||
"deletedTicketDmTitle":"Ticket supprimé !",
|
||||
"closedTicketDmDescription":"Votre ticket est fermé !",
|
||||
"deletedTicketDmDescription":"Votre ticket est supprimé !",
|
||||
"reopenTicketDmTitle":"Ticket réouvert !",
|
||||
"reopenTicketDmDescription":"Votre ticket est réouvert !",
|
||||
|
||||
"chooseCategory":"choisissez une catégorie:",
|
||||
"chooseCategory":"Choisissez une catégorie:",
|
||||
"gettingdeleted":"Le ticket est en cours de suppression...",
|
||||
|
||||
"none":"rien",
|
||||
"reason":"raison",
|
||||
"none":"Rien",
|
||||
"reason":"Raison",
|
||||
"createdat":"Créé à",
|
||||
"openedby":"Ouvert par",
|
||||
"deletedby":"supprimé par",
|
||||
"closedby":"fermé par",
|
||||
"deletedby":"Supprimé 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"
|
||||
},
|
||||
"transcripts":{
|
||||
"title":"Transcript",
|
||||
"processed":"Cette transcript est en cours de traitement",
|
||||
"wait":"S'il vous plait, attendez...",
|
||||
"estimated":"Temps estime:",
|
||||
"estimated":"Temps estimé:",
|
||||
"available":"La transcript est disponible ici"
|
||||
},
|
||||
"stats":{
|
||||
"globalTitle":"Statistiques mondiales",
|
||||
"globalTitle":"Statistiques du serveur",
|
||||
"ticketTitle":"Statistiques des tickets pour {0}",
|
||||
"userTitle":"Statistiques utilisateur pour {0}",
|
||||
"userTitle":"Statistiques des utilisateurs pour {0}",
|
||||
"systemTitle":"Statistiques du système",
|
||||
"versionTitle":"Version du bot",
|
||||
|
||||
"ticketsCreated":"Tickets créés",
|
||||
"ticketsClosed":"Tickets fermés",
|
||||
"ticketsDeleted":"Tickets supprimés",
|
||||
"ticketsReopened":"Tickets rouverts",
|
||||
"ticketsReopened":"Tickets réouverts",
|
||||
"ticketsAutoclosed":"Tickets fermés automatiquement",
|
||||
"transcriptsCreated":"Transcriptions créées",
|
||||
"startupDate":"Date de démarrage du bot",
|
||||
@@ -122,12 +122,12 @@
|
||||
|
||||
"switches":{
|
||||
"globalAdmin":"Administrateur global",
|
||||
"ticketAdmin":"Administrateur des Tickets",
|
||||
"ticketAdmin":"Administrateur des tickets",
|
||||
"member":"Membre",
|
||||
"open":"Ouvrir",
|
||||
"reopened":"Rouvert",
|
||||
"closed":"Fermée",
|
||||
"autoclosed":"fermeture automatique"
|
||||
"reopened":"Réouvert",
|
||||
"closed":"Fermé",
|
||||
"autoclosed":"Fermé automatiquement"
|
||||
},
|
||||
|
||||
"errorUserNotFound":"Cet utilisateur est introuvable dans la base de données de statistiques !"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"david.#8276 ",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Ungültiges Argument!",
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"ꙅoᴎɒᎸɘƚꙅ#3744",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Invalid Arguments!",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"Snowy",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Hibás paraméterek!",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"erxg",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Argumen tidak valid!",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"Maurizio#0268",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Argomenti non validi!",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"NoOneNook#0266",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Ugyldige argumenter!",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"MKevas#8311",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Nieprawidłowe argumenty!",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"QuirAddon#9778",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Argumentos inválidos!",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"Sanke#6086",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Argumente Invalide",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"Apexo#0723",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Неверные аргументы!",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"n1kkec#5341",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Napačen argument!",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"Redactado#1673 & josuens14#5267",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"¡Argumentos inválidos!",
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"Mods HD#0661",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"อาร์กิวเมนต์ไม่ถูกต้อง!",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"Hydrâelčhâvø#1575",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
||||
"_INFO":"This file is a translation for open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Geçersiz argümanlar!",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"_CREDITS":"Anderskiy#4093",
|
||||
"_INFO":"Цей файл є перекладом для open ticket 3.5.0",
|
||||
"_INFO":"Цей файл є перекладом для open ticket 3.5.2",
|
||||
|
||||
"errors":{
|
||||
"missingArgsTitle":"Невірні аргументи!",
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "open-ticket",
|
||||
"version": "3.5.0",
|
||||
"version": "3.5.2",
|
||||
"description": "This is an open-source discord ticket bot, you can configure it and it comes with cool features like a transcript.",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
|
||||
Reference in New Issue
Block a user