39#if TRINITY_COMPILER == TRINITY_COMPILER_GNU
40#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
50 static std::vector<ChatCommand> ticketResponseCommandTable =
55 static std::vector<ChatCommand> ticketCommandTable =
74 static std::vector<ChatCommand> commandTable =
86 char* ticketIdStr = strtok((
char*)args,
" ");
87 uint32 ticketId = atoi(ticketIdStr);
89 char* targetStr = strtok(
nullptr,
" ");
93 std::string target(targetStr);
135 std::string msg = ticket->
FormatMessageString(*handler,
nullptr, target.c_str(),
nullptr,
nullptr,
nullptr);
145 uint32 ticketId = atoi(args);
165 std::string msg = ticket->
FormatMessageString(*handler, player ? player->
GetName().c_str() :
"Console",
nullptr,
nullptr,
nullptr,
nullptr);
173 submitter->SendDirectMessage(&data);
183 char* ticketIdStr = strtok((
char*)args,
" ");
184 uint32 ticketId = atoi(ticketIdStr);
186 char* comment = strtok(
nullptr,
"\n");
211 std::string msg = [&] {
214 assignedName.empty() ?
nullptr : assignedName.c_str(),
nullptr,
nullptr,
nullptr);
234 char* ticketIdStr = strtok((
char*)args,
" ");
235 uint32 ticketId = atoi(ticketIdStr);
244 char* response = strtok(
nullptr,
"\n");
281 uint32 ticketId = atoi(args);
303 player->SendDirectMessage(&data);
317 uint32 ticketId = atoi(args);
328 sTicketMgr->SendTicket(player->GetSession(), ticket);
381 uint32 ticketId = atoi(args);
410 if (security > mySecurity)
434 uint32 ticketId = atoi(args);
455 std::string name(args);
462 guid = player->GetGUID();
494 char* ticketIdStr = strtok((
char*)args,
" ");
495 uint32 ticketId = atoi(ticketIdStr);
497 char* response = strtok(
nullptr,
"\n");
SQLTransaction< CharacterDatabaseConnection > CharacterDatabaseTransaction
@ LANG_COMMAND_TICKETRESET
@ LANG_COMMAND_TICKETALREADYASSIGNED
@ LANG_COMMAND_TICKETUNASSIGNSECURITY
@ LANG_COMMAND_TICKETCANNOTCLOSE
@ LANG_COMMAND_TICKETCLOSEFIRST
@ LANG_COMMAND_TICKETNOTASSIGNED
@ LANG_COMMAND_TICKETASSIGNERROR_B
@ LANG_COMMAND_TICKETPENDING
@ LANG_COMMAND_TICKETLISTADDCOMMENT
@ LANG_COMMAND_TICKETASSIGNERROR_A
@ LANG_COMMAND_TICKETNOTEXIST
bool normalizePlayerName(std::string &name)
@ TICKET_IN_ESCALATION_QUEUE
@ GMTICKET_RESPONSE_TICKET_DELETED
static uint32 GetSecurity(uint32 accountId, int32 realmId)
static bool HasPermission(uint32 accountId, uint32 permission, uint32 realmId)
static bool IsAdminAccount(uint32 gmlevel)
void SendGlobalGMSysMessage(const char *str)
static std::string PGetParseString(std::string_view fmt, Args &&... args)
WorldSession * GetSession()
void PSendSysMessage(char const *fmt, Args &&... args)
virtual void SendSysMessage(std::string_view str, bool escapeCharacters=false)
ObjectGuid GetAssignedToGUID() const
bool IsAssignedTo(ObjectGuid guid) const
Player * GetPlayer() const
void SetResolvedBy(ObjectGuid value)
void SaveToDB(CharacterDatabaseTransaction trans) const
void SetAssignedTo(ObjectGuid guid, bool isAdmin)
void AppendResponse(std::string const &response)
void SetComment(std::string const &comment)
void SendResponse(WorldSession *session) const
std::string FormatMessageString(ChatHandler &handler, bool detailed=false) const
bool IsAssignedNotTo(ObjectGuid guid) const
std::string GetAssignedToName() const
Player * GetAssignedPlayer() const
GMTicketEscalationStatus GetEscalatedStatus() const
void SetEscalatedStatus(GMTicketEscalationStatus escalatedStatus)
static ObjectGuid GetGUID(Object const *o)
ObjectGuid GetGUID() const
WorldSession * GetSession() const
std::string const & GetName() const
AccountTypes GetSecurity() const
Player * GetPlayer() const
static bool HandleGMTicketResponseAppendLnCommand(ChatHandler *handler, char const *args)
static bool HandleGMTicketListOnlineCommand(ChatHandler *handler, char const *)
static bool HandleGMTicketResetCommand(ChatHandler *handler, char const *)
static bool HandleGMTicketGetByNameCommand(ChatHandler *handler, char const *args)
static bool HandleGMTicketCompleteCommand(ChatHandler *handler, char const *args)
static bool HandleGMTicketListCommand(ChatHandler *handler, char const *)
std::vector< ChatCommand > GetCommands() const override
static bool HandleGMTicketDeleteByIdCommand(ChatHandler *handler, char const *args)
static bool HandleGMTicketResponseAppendCommand(ChatHandler *handler, char const *args)
static bool HandleGMTicketEscalateCommand(ChatHandler *handler, char const *args)
static bool HandleGMTicketAssignToCommand(ChatHandler *handler, char const *args)
static bool HandleGMTicketCloseByIdCommand(ChatHandler *handler, char const *args)
static bool HandleGMTicketListClosedCommand(ChatHandler *handler, char const *)
static bool HandleToggleGMTicketSystem(ChatHandler *handler, char const *)
static bool HandleGMTicketGetByIdCommand(ChatHandler *handler, char const *args)
static bool HandleGMTicketUnAssignCommand(ChatHandler *handler, char const *args)
static bool HandleGMTicketCommentCommand(ChatHandler *handler, char const *args)
static bool _HandleGMTicketResponseAppendCommand(char const *args, bool newLine, ChatHandler *handler)
static bool HandleGMTicketListEscalatedCommand(ChatHandler *handler, char const *)
void AddSC_ticket_commandscript()
@ SMSG_GMTICKET_DELETETICKET
TC_GAME_API Player * FindPlayerByName(std::string_view name)
@ RBAC_PERM_COMMANDS_BE_ASSIGNED_TICKET
@ RBAC_PERM_COMMAND_TICKET_ESCALATEDLIST
@ RBAC_PERM_COMMAND_TICKET_ONLINELIST
@ RBAC_PERM_COMMAND_TICKET_RESPONSE_APPENDLN
@ RBAC_PERM_COMMAND_TICKET_RESPONSE_APPEND
@ RBAC_PERM_COMMAND_TICKET_RESPONSE
@ RBAC_PERM_COMMAND_TICKET_COMMENT
@ RBAC_PERM_COMMAND_TICKET_LIST
@ RBAC_PERM_COMMAND_TICKET_TOGGLESYSTEM
@ RBAC_PERM_COMMAND_TICKET_CLOSEDLIST
@ RBAC_PERM_COMMAND_TICKET_UNASSIGN
@ RBAC_PERM_COMMAND_TICKET_DELETE
@ RBAC_PERM_COMMAND_TICKET_ESCALATE
@ RBAC_PERM_COMMAND_TICKET
@ RBAC_PERM_COMMAND_TICKET_COMPLETE
@ RBAC_PERM_COMMAND_TICKET_RESET
@ RBAC_PERM_COMMAND_TICKET_VIEWNAME
@ RBAC_PERM_COMMAND_TICKET_VIEWID
@ RBAC_PERM_COMMAND_TICKET_ASSIGN
@ RBAC_PERM_COMMAND_TICKET_CLOSE