Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
466a4aea81 | ||
|
|
9d96d11cd3 |
+4
-4
@@ -10,11 +10,11 @@ We only support Open Ticket versions listed below! With support, we mean bugs, e
|
|||||||
|
|
||||||
| Version | Supported |
|
| Version | Supported |
|
||||||
|-----------|-------------------|
|
|-----------|-------------------|
|
||||||
|
| 3.5.2 | ✅ |
|
||||||
|
| 3.5.1 | ✅ |
|
||||||
| 3.5.0 | ✅ |
|
| 3.5.0 | ✅ |
|
||||||
| 3.4.4 | ✅ |
|
| 3.4.4 | 🟧 |
|
||||||
| 3.4.3 | 🟧 |
|
| < 3.4.4 | ❌ |
|
||||||
| 3.4.2 | 🟧 |
|
|
||||||
| < 3.4.2 | ❌ |
|
|
||||||
|
|
||||||
## Reporting a Vulnerability
|
## 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">
|
<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
|
||||||
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!
|
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 |
|
|English |djj123dj |🟢 Up To Date |
|
||||||
|Dutch |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 |
|
|Romanian |sankedev |🟢 Up To Date |
|
||||||
|Spanish |redactado & josuens |🟢 Up To Date |
|
|Spanish |redactado & josuens |🟢 Up To Date |
|
||||||
|German |david.3 |🟢 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 |
|
|Thai |modshd |🟢 Up To Date |
|
||||||
|Norwegian |noonenook |🟢 Up To Date |
|
|Norwegian |noonenook |🟢 Up To Date |
|
||||||
|Greek |stefanos__. |🔴 Outdated |
|
|Greek |stefanos__. |🔴 Outdated |
|
||||||
|
|Indonesian |erxg |🟢 Up To Date |
|
||||||
|
|
||||||
## links
|
## links
|
||||||
current version: _v3.5.0_
|
current version: _v3.5.2_
|
||||||
</br>changelog: [click here](https://otgithub.dj-dj.be/releases)
|
</br>changelog: [click here](https://otgithub.dj-dj.be/releases)
|
||||||
</br>documentation: [click here](https://docs.openticket.dj-dj.be/quick-start)
|
</br>documentation: [click here](https://docs.openticket.dj-dj.be/quick-start)
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -49,7 +49,7 @@ module.exports = () => {
|
|||||||
if (!interaction.guild) return
|
if (!interaction.guild) return
|
||||||
|
|
||||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
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
|
const ticketId = hiddendata.find(d => d.key == "type").value
|
||||||
|
|
||||||
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
||||||
|
|||||||
+1
-1
@@ -79,7 +79,7 @@ module.exports = () => {
|
|||||||
if (!interaction.guild) return
|
if (!interaction.guild) return
|
||||||
|
|
||||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
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
|
const ticketId = hiddendata.find(d => d.key == "type").value
|
||||||
|
|
||||||
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
||||||
|
|||||||
+1
-1
@@ -67,7 +67,7 @@ module.exports = () => {
|
|||||||
if (!interaction.guild) return
|
if (!interaction.guild) return
|
||||||
|
|
||||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
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
|
const ticketId = hiddendata.find(d => d.key == "type").value
|
||||||
|
|
||||||
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
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
|
const reason = interaction.options.getString("reason") ? interaction.options.getString("reason") : false
|
||||||
|
|
||||||
await interaction.deferReply()
|
|
||||||
|
|
||||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
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
|
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
|
const descriptionReason = reason ? "**"+l.messages.reason+":** "+reason : false
|
||||||
interaction.editReply({embeds:[bot.embeds.commands.closeEmbed(interaction.user,descriptionReason)],components:[bot.buttons.close.closeCommandRow]})
|
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
|
if (!interaction.guild) return
|
||||||
|
|
||||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
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
|
const ticketId = hiddendata.find(d => d.key == "type").value
|
||||||
|
|
||||||
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
||||||
|
|||||||
+1
-1
@@ -49,7 +49,7 @@ module.exports = () => {
|
|||||||
if (!interaction.guild) return
|
if (!interaction.guild) return
|
||||||
|
|
||||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
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
|
const ticketId = hiddendata.find(d => d.key == "type").value
|
||||||
|
|
||||||
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
||||||
|
|||||||
+1
-1
@@ -55,7 +55,7 @@ module.exports = () => {
|
|||||||
if (!interaction.guild) return
|
if (!interaction.guild) return
|
||||||
|
|
||||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
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
|
const ticketId = hiddendata.find(d => d.key == "type").value
|
||||||
|
|
||||||
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
||||||
|
|||||||
+4
-4
@@ -33,13 +33,13 @@ module.exports = () => {
|
|||||||
if (!interaction.isChatInputCommand()) return
|
if (!interaction.isChatInputCommand()) return
|
||||||
if (interaction.commandName != "reopen") return
|
if (interaction.commandName != "reopen") return
|
||||||
|
|
||||||
await interaction.deferReply()
|
|
||||||
|
|
||||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
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
|
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]})
|
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
|
if (!interaction.guild) return
|
||||||
|
|
||||||
const hiddendata = bot.hiddenData.readHiddenData(interaction.channel.id)
|
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
|
const ticketId = hiddendata.find(d => d.key == "type").value
|
||||||
|
|
||||||
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
if (!permsChecker.ticket(interaction.user.id,interaction.guild.id,ticketId)){
|
||||||
|
|||||||
+2
-2
@@ -53,7 +53,7 @@
|
|||||||
},
|
},
|
||||||
"image":{
|
"image":{
|
||||||
"enable":false,
|
"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":{
|
"closedCategory":{
|
||||||
@@ -111,7 +111,7 @@
|
|||||||
"dropdown":false,
|
"dropdown":false,
|
||||||
|
|
||||||
"enableFooter":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,
|
"enableFooterImage":false,
|
||||||
"footerImage":"https://www.example.com/catmemes/cat.png",
|
"footerImage":"https://www.example.com/catmemes/cat.png",
|
||||||
|
|||||||
@@ -113,6 +113,12 @@ module.exports = async (messages,guild,channel,user,reason) => {
|
|||||||
if (!tc) return
|
if (!tc) return
|
||||||
tc.send({embeds:[errembed],files:[attachment]})
|
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
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -167,6 +173,12 @@ module.exports = async (messages,guild,channel,user,reason) => {
|
|||||||
if (!tc) return
|
if (!tc) return
|
||||||
tc.send({embeds:[errembed],files:[attachment]})
|
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{
|
}else{
|
||||||
const attachment = await require("./oldTranscript").createTranscript(messages,channel)
|
const attachment = await require("./oldTranscript").createTranscript(messages,channel)
|
||||||
@@ -179,6 +191,12 @@ module.exports = async (messages,guild,channel,user,reason) => {
|
|||||||
if (!tc) return
|
if (!tc) return
|
||||||
tc.send({embeds:[embed],files:[attachment]})
|
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()
|
asyncmanager()
|
||||||
|
|||||||
@@ -189,7 +189,7 @@ exports.liveStatusUploadManager = async (err) => {
|
|||||||
//system:config.system
|
//system:config.system
|
||||||
},
|
},
|
||||||
language:config.languageFile,
|
language:config.languageFile,
|
||||||
version:"3.5.0",
|
version:"3.5.2",
|
||||||
slashcmds:slashMode,
|
slashcmds:slashMode,
|
||||||
transcripts:transcriptMode,
|
transcripts:transcriptMode,
|
||||||
plugins:fs.readdirSync("./plugins"),
|
plugins:fs.readdirSync("./plugins"),
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
|
|
||||||
INFORMATION:
|
INFORMATION:
|
||||||
============
|
============
|
||||||
Open Ticket v3.5.0 - © DJdj Development
|
Open Ticket v3.5.2 - © DJdj Development
|
||||||
|
|
||||||
discord: https://discord.dj-dj.be
|
discord: https://discord.dj-dj.be
|
||||||
website: https://www.dj-dj.be
|
website: https://www.dj-dj.be
|
||||||
@@ -54,7 +54,7 @@ const client = new discord.Client({
|
|||||||
partials:[Partials.Channel,Partials.Message]
|
partials:[Partials.Channel,Partials.Message]
|
||||||
})
|
})
|
||||||
exports.client = client
|
exports.client = client
|
||||||
client.setMaxListeners(50)
|
client.setMaxListeners(100)
|
||||||
if (process.argv.some((v) => v == "--debug")) console.log("[TEMP_DEBUG]","created client")
|
if (process.argv.some((v) => v == "--debug")) console.log("[TEMP_DEBUG]","created client")
|
||||||
|
|
||||||
//LOAD CONFIG
|
//LOAD CONFIG
|
||||||
@@ -396,7 +396,55 @@ this.actionRecorder.push({
|
|||||||
type:"debugsystem.success"
|
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
|
//LOGIN SYSTEM
|
||||||
const token = config.token.fromENV ? process.env.TOKEN : config.token.value
|
if (config.token.fromENV){
|
||||||
client.login(token)
|
loadFromDotEnv(fs.readFileSync(".env"))
|
||||||
|
client.login(process.env.TOKEN)
|
||||||
|
}else{
|
||||||
|
client.login(config.token.value)
|
||||||
|
}
|
||||||
|
|
||||||
this.errorLog.log("debug","login with token")
|
this.errorLog.log("debug","login with token")
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"ChilledBroke#9986 & M4#5882",
|
"_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": {
|
"errors": {
|
||||||
"missingArgsTitle": "قيمة غير صالحة!",
|
"missingArgsTitle": "قيمة غير صالحة!",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"DJdj Development",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"Invalid Arguments!",
|
"missingArgsTitle":"Invalid Arguments!",
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"spyeye_",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"Neplatný Argument!",
|
"missingArgsTitle":"Neplatný Argument!",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"the_gamer#5095",
|
"_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": {
|
"errors": {
|
||||||
"missingArgsTitle": "Ugyldigt Argument!",
|
"missingArgsTitle": "Ugyldigt Argument!",
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"DJj123dj#1706",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"Onjuiste parameters!",
|
"missingArgsTitle":"Onjuiste parameters!",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"DJdj Development",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"Invalid Arguments!",
|
"missingArgsTitle":"Invalid Arguments!",
|
||||||
|
|||||||
+72
-72
@@ -1,114 +1,114 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"Sanke#6086",
|
"_CREDITS":"tostam",
|
||||||
"_INFO":"This file is a translation for open ticket 3.5.0",
|
"_INFO":"Ce fichier est une traduction pour OpenTicket 3.5.0",
|
||||||
|
|
||||||
"errors":{
|
"errors":{
|
||||||
"missingArgsTitle":"Arguments invalides!",
|
"missingArgsTitle":"Arguments invalides !",
|
||||||
"missingArgsDescription":"Argument manquant",
|
"missingArgsDescription":"Argument manquant !",
|
||||||
"noPermsTitle":"Pas de permissions!",
|
"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!",
|
"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!",
|
"noPermsDelete":"Seuls les staffs peuvent supprimer un ticket !",
|
||||||
"chooseFromListTitle":"Invalid ID",
|
"chooseFromListTitle":"ID invalide !",
|
||||||
"chooseFromListDescription":"Choisissez l'un des identifiants ci-dessous:",
|
"chooseFromListDescription":"Choisissez l'un des identifiants ci-dessous:",
|
||||||
"boterror":"Bot Error!",
|
"boterror":"Erreur du bot !",
|
||||||
"notInTicketTitle":"Vous n'êtes pas dans un ticket!",
|
"notInTicketTitle":"Vous n'êtes pas dans un ticket !",
|
||||||
"notInTicketDescription":"Cette commande ne fonctionne pas en dehors des tickets!",
|
"notInTicketDescription":"Cette commande ne fonctionne pas en dehors des tickets !",
|
||||||
"ticketDoesntExist":"Ce ticket n'existe plus!",
|
"ticketDoesntExist":"Ce ticket n'existe pas !",
|
||||||
"roleDoesntExist":"Ce rôle n'existe plus!",
|
"roleDoesntExist":"Ce rôle n'existe pas !",
|
||||||
"anotherOption":"Cette option n'est pas un ticket mais un autre type!",
|
"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!",
|
"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!"
|
"somethingWentWrong":"**Quelque chose s'est mal passé !**\nVeuillez réessayer une autre fois !"
|
||||||
},
|
},
|
||||||
"commands":{
|
"commands":{
|
||||||
"userAddedTitle":"{0} a été ajouté à ce ticket!",
|
"userAddedTitle":"{0} a été ajouté à ce ticket !",
|
||||||
"userRemovedTitle":"Supprimé {0} de ce ticket!",
|
"userRemovedTitle":"{0} a été supprimé de ce ticket !",
|
||||||
"renameTitle":"Changement du nom en {0}!",
|
"renameTitle":"Changement de nom du ticket en {0} !",
|
||||||
"closeTitle":"Fermé ce ticket!",
|
"closeTitle":"Ticket fermé",
|
||||||
"deleteTitle":"Suppression de ce ticket...",
|
"deleteTitle":"Suppression de ce ticket...",
|
||||||
"reopenTitle":"A rouvert ce ticket!",
|
"reopenTitle":"Ticket réouvert",
|
||||||
|
|
||||||
"claimTitle":"Ce ticket est maintenant réclamé à {0}",
|
"claimTitle":"Ce ticket est maintenant réclamé par {0}",
|
||||||
"unclaimTitle":"Ce ticket n'est pas réclamé!",
|
"unclaimTitle":"Ce ticket n'est plus réclamé !",
|
||||||
"changeTitle":"Modification du type de ticket en {0}!",
|
"changeTitle":"Modification du type de ticket en {0} !",
|
||||||
|
|
||||||
"statsTitle":"Voici les statistiques pour {0}!",
|
"statsTitle":"Voici les statistiques pour {0} !",
|
||||||
"autocloseTitle":"Ce ticket sera automatiquement clôturé après {0}!",
|
"autocloseTitle":"Ce ticket sera automatiquement clôturé après {0} !",
|
||||||
"autocloseRejectTitle":"Ce ticket ne sera plus clôturé automatiquement!",
|
"autocloseRejectTitle":"Ce ticket ne sera plus clôturé automatiquement !",
|
||||||
"autocloseWarn":"Cela n'affecte que les tickets inactifs!",
|
"autocloseWarn":"Cela n'affecte que les tickets inactifs !",
|
||||||
|
|
||||||
"goToTicket":"Aller au ticket",
|
"goToTicket":"Aller au 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 seulement {0} ticket(s) à la fois !_"
|
||||||
},
|
},
|
||||||
"helpMenu":{
|
"helpMenu":{
|
||||||
"title":"Commandes disponibles :",
|
"title":"Commandes disponibles :",
|
||||||
"header1":"**Allez à {0} pour créer un ticket !**\n\n",
|
"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",
|
"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)",
|
"msgCmd":"Faire apparaître une intégration avec des boutons (administrateurs uniquement)",
|
||||||
"renameCmd":"Renommer un ticket. (sans espaces)",
|
"renameCmd":"Renommer un ticket (sans espaces)",
|
||||||
"closeCmd":"Fermer un ticket.",
|
"closeCmd":"Fermer un ticket",
|
||||||
"deleteCmd":"Supprimer un billet.",
|
"deleteCmd":"Supprimer un ticket",
|
||||||
"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":"Réouvrir un ticket après sa clôture",
|
||||||
"changeCmd":"Changer le type de ticket.",
|
"changeCmd":"Changer le type de ticket",
|
||||||
"claimCmd":"Réclamer un billet",
|
"claimCmd":"Réclamer un ticket",
|
||||||
"unclaimCmd":"Annuler la réclamation d'un ticket.",
|
"unclaimCmd":"Annuler la réclamation d'un ticket",
|
||||||
"statsCmd":"Afficher les statistiques des tickets.",
|
"statsCmd":"Afficher les statistiques des tickets",
|
||||||
"autocloseCmd":"Définir une minuterie pour fermer automatiquement le ticket"
|
"autocloseCmd":"Définir une minuterie pour fermer automatiquement le ticket"
|
||||||
},
|
},
|
||||||
"buttons":{
|
"buttons":{
|
||||||
"close":"Fermer le ticket",
|
"close":"Fermer le ticket",
|
||||||
"delete":"Supprimer le billet",
|
"delete":"Supprimer le ticket",
|
||||||
"reopen":"Billet de réouverture",
|
"reopen":"Réouvrir le ticket",
|
||||||
"closeWithReason":"fermer avec une raison"
|
"closeWithReason":"Fermer avec une raison"
|
||||||
},
|
},
|
||||||
"messages":{
|
"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 !*",
|
"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éé !",
|
"createdTitle":"Ticket créé !",
|
||||||
"createdDescription":"Votre ticket est créé, vous pouvez le détecter par un ping !",
|
"createdDescription":"Votre ticket est créé, vous pouvez le détecter par un ping !",
|
||||||
|
|
||||||
"newTicketDmTitle":"Nouveau billet!",
|
"newTicketDmTitle":"Nouveau ticket !",
|
||||||
"closedTicketDmTitle":"Billet fermé!",
|
"closedTicketDmTitle":"Ticket fermé !",
|
||||||
"deletedTicketDmTitle":"Billet supprimé !",
|
"deletedTicketDmTitle":"Ticket supprimé !",
|
||||||
"closedTicketDmDescription":"Votre billet est fermé !",
|
"closedTicketDmDescription":"Votre ticket est fermé !",
|
||||||
"deletedTicketDmDescription":"Votre billet est supprimé !",
|
"deletedTicketDmDescription":"Votre ticket est supprimé !",
|
||||||
"reopenTicketDmTitle":"Billet rouvert!",
|
"reopenTicketDmTitle":"Ticket réouvert !",
|
||||||
"reopenTicketDmDescription":"Votre billet est rouvert !",
|
"reopenTicketDmDescription":"Votre ticket est réouvert !",
|
||||||
|
|
||||||
"chooseCategory":"choisissez une catégorie:",
|
"chooseCategory":"Choisissez une catégorie:",
|
||||||
"gettingdeleted":"Le ticket est en cours de suppression...",
|
"gettingdeleted":"Le ticket est en cours de suppression...",
|
||||||
|
|
||||||
"none":"rien",
|
"none":"Rien",
|
||||||
"reason":"raison",
|
"reason":"Raison",
|
||||||
"createdat":"Créé à",
|
"createdat":"Créé à",
|
||||||
"openedby":"Ouvert par",
|
"openedby":"Ouvert par",
|
||||||
"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"
|
||||||
},
|
},
|
||||||
"transcripts":{
|
"transcripts":{
|
||||||
"title":"Transcript",
|
"title":"Transcript",
|
||||||
"processed":"Cette transcript est en cours de traitement",
|
"processed":"Cette transcript est en cours de traitement",
|
||||||
"wait":"S'il vous plait, attendez...",
|
"wait":"S'il vous plait, attendez...",
|
||||||
"estimated":"Temps estime:",
|
"estimated":"Temps estimé:",
|
||||||
"available":"La transcript est disponible ici"
|
"available":"La transcript est disponible ici"
|
||||||
},
|
},
|
||||||
"stats":{
|
"stats":{
|
||||||
"globalTitle":"Statistiques mondiales",
|
"globalTitle":"Statistiques du serveur",
|
||||||
"ticketTitle":"Statistiques des tickets pour {0}",
|
"ticketTitle":"Statistiques des tickets pour {0}",
|
||||||
"userTitle":"Statistiques utilisateur pour {0}",
|
"userTitle":"Statistiques des utilisateurs pour {0}",
|
||||||
"systemTitle":"Statistiques du système",
|
"systemTitle":"Statistiques du système",
|
||||||
"versionTitle":"Version du bot",
|
"versionTitle":"Version du bot",
|
||||||
|
|
||||||
"ticketsCreated":"Tickets créés",
|
"ticketsCreated":"Tickets créés",
|
||||||
"ticketsClosed":"Tickets fermés",
|
"ticketsClosed":"Tickets fermés",
|
||||||
"ticketsDeleted":"Tickets supprimés",
|
"ticketsDeleted":"Tickets supprimés",
|
||||||
"ticketsReopened":"Tickets rouverts",
|
"ticketsReopened":"Tickets réouverts",
|
||||||
"ticketsAutoclosed":"Tickets fermés automatiquement",
|
"ticketsAutoclosed":"Tickets fermés automatiquement",
|
||||||
"transcriptsCreated":"Transcriptions créées",
|
"transcriptsCreated":"Transcriptions créées",
|
||||||
"startupDate":"Date de démarrage du bot",
|
"startupDate":"Date de démarrage du bot",
|
||||||
@@ -122,14 +122,14 @@
|
|||||||
|
|
||||||
"switches":{
|
"switches":{
|
||||||
"globalAdmin":"Administrateur global",
|
"globalAdmin":"Administrateur global",
|
||||||
"ticketAdmin":"Administrateur des Tickets",
|
"ticketAdmin":"Administrateur des tickets",
|
||||||
"member":"Membre",
|
"member":"Membre",
|
||||||
"open":"Ouvrir",
|
"open":"Ouvrir",
|
||||||
"reopened":"Rouvert",
|
"reopened":"Réouvert",
|
||||||
"closed":"Fermée",
|
"closed":"Fermé",
|
||||||
"autoclosed":"fermeture automatique"
|
"autoclosed":"Fermé automatiquement"
|
||||||
},
|
},
|
||||||
|
|
||||||
"errorUserNotFound":"Cet utilisateur est introuvable dans la base de données de statistiques!"
|
"errorUserNotFound":"Cet utilisateur est introuvable dans la base de données de statistiques !"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"david.#8276 ",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"Ungültiges Argument!",
|
"missingArgsTitle":"Ungültiges Argument!",
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"ꙅoᴎɒᎸɘƚꙅ#3744",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"Invalid Arguments!",
|
"missingArgsTitle":"Invalid Arguments!",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"Snowy",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"Hibás paraméterek!",
|
"missingArgsTitle":"Hibás paraméterek!",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"erxg",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"Argumen tidak valid!",
|
"missingArgsTitle":"Argumen tidak valid!",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"Maurizio#0268",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"Argomenti non validi!",
|
"missingArgsTitle":"Argomenti non validi!",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"NoOneNook#0266",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"Ugyldige argumenter!",
|
"missingArgsTitle":"Ugyldige argumenter!",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"MKevas#8311",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"Nieprawidłowe argumenty!",
|
"missingArgsTitle":"Nieprawidłowe argumenty!",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"QuirAddon#9778",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"Argumentos inválidos!",
|
"missingArgsTitle":"Argumentos inválidos!",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"Sanke#6086",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"Argumente Invalide",
|
"missingArgsTitle":"Argumente Invalide",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"Apexo#0723",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"Неверные аргументы!",
|
"missingArgsTitle":"Неверные аргументы!",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"n1kkec#5341",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"Napačen argument!",
|
"missingArgsTitle":"Napačen argument!",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"Redactado#1673 & josuens14#5267",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"¡Argumentos inválidos!",
|
"missingArgsTitle":"¡Argumentos inválidos!",
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"Mods HD#0661",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"อาร์กิวเมนต์ไม่ถูกต้อง!",
|
"missingArgsTitle":"อาร์กิวเมนต์ไม่ถูกต้อง!",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"Hydrâelčhâvø#1575",
|
"_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":{
|
"errors":{
|
||||||
"missingArgsTitle":"Geçersiz argümanlar!",
|
"missingArgsTitle":"Geçersiz argümanlar!",
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"_CREDITS":"Anderskiy#4093",
|
"_CREDITS":"Anderskiy#4093",
|
||||||
"_INFO":"Цей файл є перекладом для open ticket 3.5.0",
|
"_INFO":"Цей файл є перекладом для open ticket 3.5.2",
|
||||||
|
|
||||||
"errors":{
|
"errors":{
|
||||||
"missingArgsTitle":"Невірні аргументи!",
|
"missingArgsTitle":"Невірні аргументи!",
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "open-ticket",
|
"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.",
|
"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",
|
"main": "index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|||||||
Reference in New Issue
Block a user