Files
TicketSystem/src/main/resources/lang_en.yml
2026-04-21 17:49:01 +02:00

674 lines
33 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ============================================================
# TicketSystem Language File English (en)
#
# All plugin messages can be customized here.
# Color codes: & (e.g. &a = green, &c = red, &e = yellow, &7 = grey)
# HEX-Codes: &#RRGGBB (e.g. &#00AA00 = Green)
# Placeholders are written in curly braces: {id}, {player}, ...
#
# Switch language in config.yml: language: en
#
# {cmd_X} is automatically replaced based on language, e.g.:
# language: de → /ticket erstellen
# language: en → /ticket create
# language: both → /ticket create (erstellen)
# ============================================================
prefix: "&#5555FF[&fTicket&#5555FF] &r"
# ============================================================
# GENERAL ERRORS & HINTS
# ============================================================
general:
no-permission: "&cYou don't have permission to do this!"
console-only: "&cThis command can only be used by players."
invalid-id: "&cInvalid ID!"
invalid-player-id: "&cInvalid ticket ID: &e{id}"
player-not-found: "&cPlayer not found!"
ticket-not-found: "&cTicket not found!"
already-claimed: "&cThis ticket has already been claimed!"
no-open-tickets: "&aThere are no open tickets right now."
cooldown: "&cPlease wait &e{seconds} seconds &cbefore creating a new ticket."
separator: "&#777777&m "
# ============================================================
# SYSTEM (Export, Import, Migration, Archive, Validation)
# ============================================================
system:
export-success: "&aExport successful: &e{count} &atickets exported to &e{file}&a."
export-fail: "&cExport failed or no tickets found."
import-success: "&aImport successful: &e{count} &atickets imported."
import-fail: "&cImport failed or no tickets found."
migration-success: "&aMigration complete: &e{count} &atickets migrated."
migration-fail: "&cNo tickets migrated or an error occurred."
archive-success: "&aArchiving complete: &e{count} &atickets archived."
archive-fail: "&cNo closed tickets found to archive."
file-not-found: "&cFile not found: &e{file}"
unknown-mode: "&cUnknown mode! Use: tomysql or tofile"
validation-warning: "&c&e{count} &cinvalid tickets were found during loading."
# ============================================================
# BACKUP
# ============================================================
backup:
start: "&eCreating backup..."
success: "&aBackup created successfully: &e{file}"
fail: "&cBackup failed. Check the console."
db-create-error: "&cFailed to create the ticket!"
# ============================================================
# TICKET ACTIONS
# ============================================================
ticket:
created: "&aTicket &e#{id} &ahas been created successfully!"
created-category: "&aTicket &e#{id} &acreated! &7Category: {category}"
claimed: "&aYou have claimed ticket &e#{id} &afrom &e{player}&a."
claimed-notify: "&aYour ticket &e#{id} &ahas been claimed by &e{claimer}&a."
closed: "&aTicket &e#{id} &ahas been closed."
closed-notify: "&aYour ticket &e#{id} &ahas been closed."
forwarded: "&aTicket &e#{id} &ahas been forwarded to &e{player}&a."
forwarded-notify: "&eYou have received a forwarded ticket from &6{player}&e. &7(ID: {id})"
forwarded-creator: "&eYour ticket &6#{id} &ehas been forwarded to &b{supporter}&e."
new-notify: "&e{player} &acreated a new ticket: &7{message} &7(ID: &e{id}&7)"
close-comment-label: "&7Support comment: &f{comment}"
close-comment-short: "&7Comment: &f{comment}"
pending-closed: "&e[Ticket #{id}] &7Your ticket has been closed.{comment}{rating}"
pending-closed-comment: " &7Comment: &f{comment}"
pending-closed-rating: " &7Rating: &e{cmd_rate} {id} good/bad"
# ============================================================
# NOTIFICATIONS (Team / GUI hint)
# ============================================================
notify:
gui-hint: "&7» <click:run_command:/ticket list><yellow>Click here</yellow></click> &7to open the overview."
team-category: " §7[§r{category}§7]"
team-priority: " §7Priority: §r{priority}"
team-server: " §7Server: §b{server}"
# ============================================================
# TICKET CREATE
# ============================================================
create:
usage: "&cUsage: {cmd_create} [category] [priority] <description>"
categories-hint: "&7Categories: &ebug&7, &equestion&7, &ecomplaint&7, &eother&7, &egeneral"
priorities-hint: "&7Priorities: &alow&7, &enormal&7, &6high&7, &curgent"
max-tickets: "&cYou already have &e{max} &copen ticket(s). Please wait until your ticket is processed."
no-description: "&cPlease provide a description for your ticket."
too-long: "&cYour description is too long! Maximum {max} characters."
blacklist-blocked: "&cYou have been banned from the ticket system and cannot create tickets."
category-invalid: "&cUnknown category: &e{input}&c. Available categories: &e{categories}"
# ============================================================
# CLAIM / CLOSE / FORWARD
# ============================================================
claim:
usage: "&cUsage: {cmd_claim} <ID>"
close:
usage: "&cUsage: {cmd_close} <ID> [comment]"
forward:
usage: "&cUsage: {cmd_forward} <ID> <player>"
bungee-offline: "&7[BungeeCord] Player &e{player} &7is not online on this server."
local-not-found: "&cPlayer not found!"
# ============================================================
# COMMENTS
# ============================================================
comment:
saved: "&aYour comment on ticket &e#{id} &ahas been saved."
usage: "&cUsage: {cmd_comment} <ID> <message>"
too-long: "&cMessage too long! Maximum 500 characters."
no-permission: "&cYou can only comment on your own tickets."
error: "&cFailed to save the comment."
notify-online: "&e[Ticket #{id}] &f{author} &7commented: &f{message}"
notify-offline: "&e[Ticket #{id}] &f{author} &7commented while you were offline: &f{message}"
claimer-offline: "&e[Ticket #{id}] &f{author} &7commented on your claimed ticket (offline): &f{message}"
# ============================================================
# RATINGS
# ============================================================
rating:
saved-good: "&aThank you for your rating! &a👍 Positive"
saved-bad: "&aThank you for your rating! &c👎 Negative"
already-rated: "&cYou have already rated this ticket."
not-yours: "&cYou can only rate your own tickets."
disabled: "&cRatings are currently disabled."
not-closeable: "&cRating could not be saved. Is the ticket still open?"
usage: "&cUsage: {cmd_rate} <ID> <good|bad>"
invalid: "&cInvalid rating! Use &egood &cor &ebad&c."
prompt-header: "&#777777&m "
prompt-title: "&6How satisfied are you with the support?"
prompt-good: "<green><click:run_command:/ticket rate {id} good>&a👍 Rate Good</click></green>"
prompt-bad: "<red><click:run_command:/ticket rate {id} bad>&c👎 Rate Bad</click></red>"
prompt-footer: "&#777777&m "
# ============================================================
# SET PRIORITY
# ============================================================
setpriority:
usage: "&cUsage: {cmd_setpriority} <ID> <low|normal|high|urgent>"
disabled: "&cThe priority system is disabled."
invalid: "&cInvalid priority! Valid: &alow&7, &enormal&7, &6high&7, &curgent"
success: "&aPriority of ticket &e#{id} &ahas been set to {priority}&a."
not-found: "&cTicket &e#{id} &cwas not found."
no-player-permission: "&cOnly admins and supporters are allowed to set priority."
# ============================================================
# PRIORITY LABELS (Low, Normal, High, Urgent)
# ============================================================
priorities:
low: "Low"
normal: "Normal"
high: "High"
urgent: "Urgent"
# ============================================================
# BLACKLIST
# ============================================================
blacklist:
added: "&a{player} &ahas been added to the ticket blacklist. &7Reason: &e{reason}"
removed: "&a{player} &ahas been removed from the blacklist."
already: "&cPlayer is already on the blacklist."
not-found: "&cPlayer was not on the blacklist."
usage: "&cUsage: {cmd_blacklist} <add|remove|list> [player] [reason]"
usage-add: "&cUsage: {cmd_blacklist} add <player> [reason]"
usage-remove: "&cUsage: {cmd_blacklist} remove <player>"
list-header: "&6Ticket Blacklist &7({count} entries)"
list-empty: "&7No banned players."
list-entry: "&e{player} &7 &f{reason} &7(banned by &e{by}&7)"
# ============================================================
# STATISTICS
# ============================================================
stats:
header: "&6Ticket Statistics"
total: "&eTotal: &a{count}"
open: "&eOpen: &a{count}"
closed: "&eClosed: &a{count} &7(historical)"
forwarded: "&eForwarded: &a{count}"
ratings-header: "&6Support Ratings &7(total, historical)"
ratings-summary: "&a👍 Positive: &f{up} &c👎 Negative: &f{down}"
ratings-percent: "&7Satisfaction: &e{percent}%"
staff-header: "&6Ratings by Support Staff:"
staff-table-header: "&7 Name 👍 👎 Tickets Satisfied"
staff-entry: "&e {name} &a{up} &c{down} &7{total} &e{percent}"
servers-header: "&6Tickets by Server:"
server-entry: "&b {server}: &a{count}"
top-header: "&6Top-5 Ticket Creators &7(historical, persistent)"
top-empty: "&7No data available yet."
top-entry: " {medal} &f{name} &e{count} &7{label}"
top-ticket-label: "Ticket"
top-tickets-label: "Tickets"
cache-info: "&7Cache: &e{count} &7cached ticket(s)"
# ============================================================
# TOP CREATORS
# ============================================================
top:
header: "&6&lTop-5 Ticket Creators"
empty: "&7No data available yet."
entry: "{medal} &f{name} &e{count} &7{label}"
footer: "&7(Counters persist even after tickets are deleted)"
# ============================================================
# RELOAD
# ============================================================
reload:
success: "&aConfiguration reloaded. &7(Categories, FAQs, cache cleared)"
bungee-info: "&8[BungeeCord] &7Server: &b{server}"
# ============================================================
# MIGRATE / EXPORT / IMPORT
# ============================================================
migrate:
usage: "&cUsage: {cmd_migrate} <tomysql|tofile>"
export:
usage: "&cUsage: {cmd_export} <filename>"
import:
usage: "&cUsage: {cmd_import} <filename>"
# ============================================================
# FAQ SYSTEM
# ============================================================
faq:
usage-add: "&cUsage: {cmd_faq} add <question> | <answer>"
usage-add-example: "&7Example: &e{cmd_faq} add How do I create a ticket? | Use {cmd_create}."
usage-edit: "&cUsage: {cmd_faq} edit <ID> <question> | <answer>"
usage-delete: "&cUsage: {cmd_faq} delete <ID>"
separator-missing: "&cSeparate question and answer with &e|&c, e.g.:"
separator-example: "&e{cmd_faq} add How do I create a ticket? | Use {cmd_create}."
separator-short: "&cSeparate question and answer with &e|&c."
invalid-id: "&cInvalid FAQ ID: &e{id}"
created: "&aFAQ &e#{id} &ahas been created successfully!"
created-question: "&7Question: &e{question}"
created-answer: "&7Answer: &f{answer}"
created-category-info: "&7Category: {category}"
updated: "&aFAQ &e#{id} &ahas been updated successfully!"
deleted: "&aFAQ &e#{id} &ahas been deleted."
not-found: "&cFAQ &e#{id} &cwas not found."
reloaded: "&aFAQs reloaded. ({count} entries)"
migrate-no-mysql: "&cFAQ migration only possible when use-mysql: true is active."
migrate-start: "&eFAQ migration started... (faqs.yml → MySQL)"
migrate-success: "&aFAQ migration complete! &7{cats} category/categories and {entries} entry/entries imported."
migrate-fail: "&cFAQ migration failed. Check the console for details."
migrate-tofile-start: "&eFAQ export started... (MySQL → faqs.yml)"
migrate-tofile-success: "&aFAQ export complete! &7{cats} category/categories and {entries} entry/entries saved to faqs.yml."
list-header: "&6Frequently Asked Questions (FAQ) &7— {count} entries"
list-empty: "&7No FAQs available yet."
list-entry: "&e#{id} &f{question}"
list-answer: " &7→ &f{answer}"
list-admin-hint: "&7Commands: &e{cmd_faq} add &8| &e{cmd_faq} edit <ID> &8| &e{cmd_faq} delete <ID>"
unknown-sub: "&cUnknown FAQ subcommand."
hint-open: "&7Use &e{cmd_faq} &7to open the GUI."
disabled: "&cThe FAQ system is disabled on this server."
admin-commands: "&7Admin commands: &e{cmd_faq} add | edit | delete | reload | list | migrate"
# ============================================================
# FAQ CATEGORY COMMAND (/ticket category)
# ============================================================
faqcat:
usage: "&cUsage: /ticket category <add|delete|list>"
usage-add: "&cUsage: /ticket category add <n> [&Color] [Description]"
usage-delete: "&cUsage: /ticket category delete <key>"
created: "&aFAQ category &e{name} &acreated! &7(Key: &e{key}&7)"
deleted: "&aFAQ category &e{key} &ahas been deleted. &7FAQs are now uncategorized."
not-found: "&cFAQ category &e{key} &cwas not found."
already-exists: "&cA FAQ category with key &e{name} &calready exists."
list-header: "&6FAQ Categories &7({count} entries)"
list-empty: "&7No FAQ categories yet."
list-entry: "&e{key} &8→ &r{name} &8| &7{count} FAQ(s) &8| &7{desc}"
# ============================================================
# HELP MENU (/ticket without arguments)
# ============================================================
help:
header: "&#00FFFF&lTicketSystem &7 Commands"
create: "&e{cmd_create} [category] <text> &7 Create a new ticket"
list: "&e{cmd_list} &7 View your tickets (GUI)"
comment: "&e{cmd_comment} <ID> <text> &7 Add a message to a ticket"
rate: "&e{cmd_rate} <ID> <good|bad> &7 Rate support"
claim: "&e{cmd_claim} <ID> &7 Claim a ticket"
close: "&e{cmd_close} <ID> [comment] &7 Close a ticket"
forward: "&e{cmd_forward} <ID> <player> &7 Forward a ticket"
blacklist: "&e{cmd_blacklist} <add|remove|list> [player] [reason] &7 Manage blacklist"
reload: "&e{cmd_reload} &7 Reload configuration"
stats: "&e{cmd_stats} &7 Show statistics"
bungee-status: "&8[BungeeCord] &7Server: &b{server} &8| Cross-server notifications &aactive"
# ============================================================
# GUI TEXTS (TicketGUI)
# ============================================================
gui:
# ── Chat Messages ───────────────────────────────────────
no-archive-permission: "&cYou don't have permission to view the archive."
no-tickets: "&aYou currently have no tickets."
filter-label: "&7Filter: {filter}"
ticket-removed: "&aYour ticket &e#{id} &ahas been removed from your overview."
ticket-remove-error: "&cFailed to remove the ticket."
ticket-remove-claimed: "&cYou cannot delete this ticket as it is already being processed by a supporter."
teleport-success: "&7You have been teleported to ticket &e#{id}&7."
world-not-loaded: "&cThe world of this ticket is not loaded!"
teleport-disabled: "&cCross-server teleport is disabled in the config.{hint}"
teleport-unknown: "&cTicket server unknown teleport not possible."
bungee-connect: "&7Connecting you to server &b{server} &7for ticket &e#{id}&7..."
bungee-connect-fail: "&cServer switch failed. Please connect manually."
no-delete-permission: "&cYou don't have permission to permanently delete tickets."
only-closed-deletable: "&cOnly closed tickets can be permanently deleted."
ticket-deleted: "&aTicket &e#{id} &ahas been permanently deleted."
ticket-delete-error: "&cFailed to delete the ticket."
already-closed: "&cThis ticket is already closed."
close-prompt-header: "&6Close ticket #{id}"
close-prompt-hint: "&7Enter a comment (&e- &7for none)."
close-prompt-cancel: "&7Cancel with &ccancel"
close-cancelled: "&cCancelled."
close-comment-echo: "&7Comment: &f{comment}"
no-priority-permission: "&cYou don't have permission to change the priority."
priority-closed: "&cThe priority of closed tickets cannot be changed."
priority-set: "&aPriority set to {priority}&a."
priority-error: "&cFailed to change the priority."
comments-header: "&6Comments for ticket #{id}"
comments-empty: "&7No comments yet."
comments-entry: "&e{author} &7({time})&8: &f{message}"
# ── Inventory Titles ─────────────────────────────────────
item:
title-admin: "§8§lTicket Overview"
title-archive: "§8§lTicket Archive"
title-player: "§8§lMy Tickets"
title-detail: "§8§lTicket Details"
# ── Lore labels in ticket items ─────────────────────
lore-creator: "§7Creator: §e{value}"
lore-message: "§7Message: §f{value}"
lore-created: "§7Created: §e{value}"
lore-server: "§7Server: §b{value}"
lore-world: "§7World: §e{value}"
lore-position: "§7Position: §e{value}"
lore-category: "§7Category: {value}"
lore-priority: "§7Priority: {value}"
lore-claimed-by: "§7Claimed by: §a{value}"
lore-claimed-at: "§7Claimed at: §a{value}"
lore-closed-at: "§7Closed at: §c{value}"
lore-comment: "§7Comment: §f{value}"
lore-rating-none: "§7No rating"
lore-rating-good: "§a👍 Positive"
lore-rating-bad: "§c👎 Negative"
lore-rating-label: "§7Rating: {value}"
lore-player-deleted: "§cPlayer deleted this ticket."
# ── Admin list item ─────────────────────────────────
list-click: "§e§l» CLICK for details"
# ── Player list item ────────────────────────────────
player-delete-hint: "§c§l» CLICK to remove"
player-delete-desc: "§7Remove this ticket from your overview."
player-in-progress: "§e» Ticket is being processed..."
player-no-delete: "§7Cannot be deleted anymore."
player-rate-hint: "§e» /ticket rate {id} good/bad"
player-rated-good: "§7Rated: §a👍"
player-rated-bad: "§7Rated: §c👎"
player-comment-label: "§7Support comment:"
# ── Detail action buttons ───────────────────────────
btn-teleport: "§b§lTeleport"
btn-teleport-lore1: "§7Teleports you to the"
btn-teleport-lore2: "§7location of this ticket."
btn-teleport-bungee1: "§7Teleports you to the ticket location."
btn-teleport-same: "§7This server §a(direct)"
btn-teleport-other: "§7Target server: §b{server}"
btn-teleport-local: "§8Local teleport"
btn-teleport-switch: "§8Server switch required"
btn-teleport-unknown: "§cServer unknown"
btn-teleport-disabled: "§8Teleport disabled"
btn-teleport-dis1: "§7In BungeeCord mode"
btn-teleport-dis2: "§7teleportation is disabled."
btn-teleport-dis3: "§8(bungee-teleport-enabled: false)"
btn-teleport-server: "§7Ticket server: §b{server}"
btn-teleport-noserver: "§7Server unknown"
btn-claim: "§a§lClaim ticket"
btn-claim-lore1: "§7Claims this ticket and"
btn-claim-lore2: "§7marks it as being processed."
btn-claimed: "§8Already claimed"
btn-claimed-lore1: "§7This ticket has already"
btn-claimed-lore2: "§7been claimed."
btn-delete: "§4§lPermanently delete ticket"
btn-delete-lore1: "§7Deletes this ticket"
btn-delete-lore2: "§7irreversibly from the database."
btn-delete-warn: "§c§lWARNING: §cThis cannot be undone!"
btn-close: "§c§lClose ticket"
btn-close-lore1: "§7Closes the ticket."
btn-close-lore2: "§eClick to enter a comment."
btn-closed: "§8Already closed"
btn-closed-lore1: "§7This ticket is already"
btn-closed-lore2: "§7closed."
btn-comments: "§e§lShow comments"
btn-comments-lore1: "§7Shows all messages/replies"
btn-comments-lore2: "§7for this ticket in chat."
btn-prio: "§6§lChange priority"
btn-prio-current: "§7Current: {value}"
btn-prio-click: "§8Click to cycle"
btn-back: "§7§lBack"
btn-back-lore: "§7Back to ticket overview."
# ── Navigation ──────────────────────────────────────
nav-prev: "§7§l◄ Previous"
nav-prev-lore: "§7Page {page} of {total}"
nav-next: "§7§lNext ►"
nav-next-lore: "§7Page {page} of {total}"
nav-page: "§8Page {page}/{total}"
nav-page-lore: "§7Total: {count} tickets on this page"
nav-archive: "§7§lClosed Tickets"
nav-archive-lore1: "§7Shows all completed"
nav-archive-lore2: "§7tickets in the archive."
nav-back-overview: "§7§lBack to Overview"
nav-back-ov-lore: "§7Shows all open tickets."
nav-filter: "§e§lCategory Filter"
nav-filter-current: "§7Current: {value}"
nav-filter-click: "§8Click to cycle"
nav-filter-all: "§7All (no filter)"
# ── FAQ GUI Texts ─────────────────────────────────────────
faq:
title: "&#00FF00&lFrequently Asked Questions (FAQ)"
admin-title: "§8§lManage FAQ"
action-title: "§8§lFAQ Actions"
add-button: "§a§lAdd new FAQ"
add-lore-1: "§7Adds a new FAQ entry."
add-lore-2: "§7You will be asked for question and answer."
edit-button: "§a§lEdit FAQ"
edit-lore-1: "§7Change question and answer"
edit-lore-2: "§7of this FAQ entry."
delete-button: "§c§lDelete FAQ"
delete-lore-1: "§7Deletes this FAQ entry."
delete-lore-2: "§c§lWARNING: §cCannot be undone!"
delete-error: "§cError: FAQ #{id} could not be deleted."
back-button: "§7§lBack"
back-lore: "§7Back to FAQ overview."
click-detail: "§e» Click for more details in chat"
click-edit: "§e» Click to edit / delete"
nav-prev: "§7§l◄ Previous"
nav-prev-lore: "§7Page {page} of {total}"
nav-next: "§7§lNext ►"
nav-next-lore: "§7Page {page} of {total}"
nav-page: "§8Page {page}/{total}"
nav-page-lore: "§7Total: {count} FAQ(s)"
chat-create-title: "§6§lCreate new FAQ"
chat-question-prompt: "§7Enter the §eQuestion §7(or §ccancel§7):"
chat-answer-prompt: "§7Now enter the §eAnswer §7(or §ccancel§7):"
chat-edit-title: "§6§lEdit FAQ #{id}"
chat-current-question: "§7Current Question: §e{question}"
lore-id: "§7FAQ #{id}"
lore-separator: "§8§m "
lore-category: "§7Category: {category}"
question-set: "§7Question set: §e{question}"
internal-error: "§cInternal error while editing the FAQ."
# ── Category selection screen ────────────────────────
cat-title: "&#00FF00&lFAQ Select Category"
cat-admin-title: "§8§lFAQ Manage Category"
cat-lore-separator: "§8§m "
cat-lore-count: "§7Entries: §e{count}"
cat-lore-click: "§e» Click to open"
cat-lore-admin-hint: "§8(Admin: Add new FAQ to this category)"
cat-lore-shift-hint: "§8Shift+Click to manage"
cat-back-button: "§7§l◄ Categories"
cat-back-lore: "§7Back to category selection."
cat-add-button: "§a§l+ New Category"
cat-add-lore-1: "§7Creates a new FAQ category."
cat-add-lore-2: "§7Use: /ticket category add <n>"
# ── Category action GUI ──────────────────────────────
cat-action-title: "§8§lManage Category"
cat-edit-button: "§a§lEdit Category"
cat-edit-lore-1: "§7Change name, color and"
cat-edit-lore-2: "§7description of this category."
cat-delete-button: "§c§lDelete Category"
cat-delete-lore-1: "§7Deletes this category."
cat-delete-lore-2: "§7FAQs will be set to 'No category'."
# ── Category chat flow ───────────────────────────────
cat-chat-add-title: "§6§lCreate New Category"
cat-chat-edit-title: "§6§lEdit Category: {name}"
cat-chat-current-name: "§7Current name: §e{name}"
cat-chat-current-color: "§7Current color: {color}"
cat-chat-current-desc: "§7Current description: §f{desc}"
cat-chat-name-prompt: "§7Enter the §eName §7(or §ccancel§7):"
cat-chat-name-set: "§7Name set: §e{name}"
cat-chat-color-prompt: "§7Enter the §ecolor code§7, e.g. §a&a§7 or §c&c §7(or §ccancel§7):"
cat-chat-color-set: "§7Color set: {colored}"
cat-chat-desc-prompt: "§7Enter the §eDescription §7(§8- §7for none, or §ccancel§7):"
cat-created: "§aCategory §e{name} §awas created!"
cat-updated: "§aCategory §e{name} §awas updated!"
cat-deleted: "§aCategory §e{name} §awas deleted."
cat-already-exists: "§cA category with key '§e{name}§c' already exists."
cat-not-found: "§cCategory '§e{name}§c' was not found."
# ── Dynamic titles with category ─────────────────────
title-cat: "&#00FF00&lFAQ {category}"
admin-title-cat: "§8§lFAQ {category}"
title-cat-prefix: "&#00FF00&lFAQ"
admin-title-cat-prefix: "§8§lFAQ"
chat-category-hint: "§7Category: {category}"
# ============================================================
# JOIN LISTENER
# ============================================================
join:
open-tickets: "&eThere are still &6{count} &eopen ticket(s)!"
open-tickets-hint: "&7» <click:run_command:/ticket list><yellow>Click here</yellow></click> &7for the ticket overview."
teleport-world-missing: "&cTeleport target world &e{world} &cnot found!"
teleport-success: "&7You have been teleported to the ticket location. &8({coords})"
pending-header: "&6Ticket notifications &7(while you were offline):"
# ============================================================
# UPDATE CHECKER
# ============================================================
update:
available-console: "New version available: {new} (current: {current})"
available-bar: "===================================================="
available-line1: "&6[TicketSystem] &eNEW UPDATE AVAILABLE: v{version}"
available-line2: "&6[TicketSystem] &eDownload: https://www.spigotmc.org/resources/132757"
# ============================================================
# WEB-PANEL TEXTS (browser user interface)
# ============================================================
web:
# ── Navigation ────────────────────────────────────────────
nav-dashboard: "Dashboard"
nav-tickets: "Tickets"
nav-faq: "FAQ"
nav-logout: "Sign Out"
nav-archive: "Archive"
role-admin: "Admin"
role-supporter: "Supporter"
btn-back: "Back"
btn-details: "Details"
# ── Error pages ───────────────────────────────────────────
error-403-title: "403 Access Denied"
error-403-message: "This page is only accessible to administrators."
# ── Login page ────────────────────────────────────────────
login-title: "Login TicketSystem Panel"
login-heading: "Welcome back"
login-sub: "Sign in with your account to continue."
login-blocked: "Too many failed attempts. Please wait {seconds} seconds."
login-error: "Username or password incorrect."
archive-btn-restore: "Restore"
archive-btn-delete: "Delete permanently"
login-label-user: "Username"
login-label-pass: "Password"
login-btn: "Sign In"
login-footer: "TicketSystem Panel · For Supporters & Admins only"
# ── Dashboard ─────────────────────────────────────────────
dash-title: "Dashboard"
dash-stat-total: "Total Tickets"
dash-stat-open: "Open / Active"
dash-stat-closed: "Closed"
dash-stat-thumbsup: "👍 Ratings"
dash-stat-thumbsdown: "👎 Ratings"
dash-stat-rating: "Satisfaction"
dash-section-recent: "Recent Tickets"
dash-section-top: "Top Ticket Creators"
dash-section-server: "Tickets per Server"
dash-empty: "No open tickets 🎉"
dash-col-id: "#"
dash-col-player: "Player"
dash-col-category: "Category"
dash-col-priority: "Priority"
dash-col-status: "Status"
dash-col-created: "Created"
dash-col-server: "Server"
dash-col-count: "Tickets"
# ── Ticket list ───────────────────────────────────────────
tickets-title: "Tickets"
tickets-total: "total"
tickets-empty: "No tickets found"
tickets-search-ph: "Search…"
tickets-col-id: "#"
tickets-col-player: "Player"
tickets-col-message: "Message"
tickets-col-cat: "Category"
tickets-col-prio: "Priority"
tickets-col-status: "Status"
tickets-col-created: "Created"
filter-all-status: "All Statuses"
filter-open: "Open"
filter-claimed: "Claimed"
filter-forwarded: "Forwarded"
filter-closed: "Closed"
filter-archived: "Archived"
filter-all-cat: "All Categories"
filter-all-prio: "All Priorities"
filter-low: "Low"
filter-normal: "Normal"
filter-high: "High"
filter-urgent: "Urgent"
# ── Ticket detail ─────────────────────────────────────────
detail-not-found: "Ticket not found"
detail-back: "← Back"
detail-info-creator: "Creator"
detail-info-created: "Created"
detail-info-claimer: "Assigned to"
detail-info-forwarded: "Forwarded to"
detail-info-position: "Position"
detail-info-rating: "Rating"
detail-rating-pos: "👍 Positive"
detail-rating-neg: "👎 Negative"
detail-section-msg: "Message"
detail-section-closecomment: "Close Comment"
detail-section-actions: "Actions"
detail-section-comments: "Comments"
detail-btn-claim: "✅ Claim"
detail-btn-forward: "🔀 Forward"
detail-btn-close: "🔒 Close"
detail-btn-archive: "📦 Archive"
detail-ph-forward: "Player name…"
detail-ph-comment: "Comment (optional)"
detail-ph-newcomment: "Write a comment…"
detail-btn-send: "Send"
detail-no-comments: "No comments yet."
# ── FAQ management ────────────────────────────────────────
faq-title: "FAQ Management"
faq-entries-suffix: "Entries"
faq-section-cats: "Categories"
faq-no-category: "Uncategorized"
faq-btn-add: "+ Add FAQ"
faq-empty: "No FAQ entries yet."
faq-no-cat-opt: "No Category"
faq-modal-add-title: "Add FAQ"
faq-modal-edit-title: "Edit FAQ"
faq-label-question: "Question"
faq-label-answer: "Answer"
faq-label-category: "Category"
faq-ph-question: "Question…"
faq-ph-answer: "Answer…"
faq-btn-cancel: "Cancel"
faq-btn-save: "Save"
faq-btn-add-confirm: "Add"