From dab8e12413623a4eef5628265471a93b54a1b339 Mon Sep 17 00:00:00 2001 From: Carbenium Date: Sun, 19 Apr 2015 23:28:25 +0200 Subject: Core/Support: * Ticket status (viewed by GM, escalated) is now displayed correctly * Fixed packet structure of CMSG_GM_TICKET_CREATE * Use proper enum values (from client) --- src/server/scripts/Commands/cs_ticket.cpp | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'src/server/scripts/Commands') diff --git a/src/server/scripts/Commands/cs_ticket.cpp b/src/server/scripts/Commands/cs_ticket.cpp index b97c2657d30..3847a74bc34 100644 --- a/src/server/scripts/Commands/cs_ticket.cpp +++ b/src/server/scripts/Commands/cs_ticket.cpp @@ -97,13 +97,15 @@ public: uint32 ticketId = atoi(args); GmTicket* ticket = sSupportMgr->GetTicket(ticketId); - if (!ticket || ticket->IsClosed() || ticket->IsCompleted() || ticket->GetEscalatedStatus() != TICKET_UNASSIGNED) + if (!ticket || ticket->IsClosed() || ticket->IsCompleted() || ticket->GetAssigendToStatus() != GMTICKET_ASSIGNEDTOGM_STATUS_NOT_ASSIGNED) { handler->SendSysMessage(LANG_COMMAND_TICKETNOTEXIST); return true; } - ticket->SetEscalatedStatus(TICKET_IN_ESCALATION_QUEUE); + SQLTransaction trans = SQLTransaction(NULL); + ticket->SetAssignedToStatus(GMTICKET_ASSIGNEDTOGM_STATUS_ESCALATED); + ticket->SaveToDB(trans); if (Player* player = ticket->GetPlayer()) sSupportMgr->SendGmTicket(player->GetSession(), ticket); @@ -192,6 +194,9 @@ public: ticket->SetViewed(); ticket->SaveToDB(trans); + if (Player* player = ticket->GetPlayer()) + sSupportMgr->SendGmTicket(player->GetSession(), ticket); + handler->SendSysMessage(ticket->FormatViewMessageString(*handler, true).c_str()); return true; } @@ -677,6 +682,9 @@ bool ticket_commandscript::HandleTicketUnAssignCommand(ChatHandler* ha ticket->SaveToDB(trans); sSupportMgr->UpdateLastChange(); + if (Player* player = ticket->GetPlayer()) + sSupportMgr->SendGmTicket(player->GetSession(), ticket); + std::string msg = ticket->FormatViewMessageString(*handler, NULL, assignedTo.c_str(), handler->GetSession() ? handler->GetSession()->GetPlayer()->GetName().c_str() : "Console", NULL, NULL); handler->SendGlobalGMSysMessage(msg.c_str()); @@ -719,6 +727,9 @@ bool ticket_commandscript::HandleTicketGetByIdCommand(ChatHandler* han ticket->SetViewed(); ticket->SaveToDB(trans); + if (Player* player = ticket->GetPlayer()) + sSupportMgr->SendGmTicket(player->GetSession(), ticket); + handler->SendSysMessage(ticket->FormatViewMessageString(*handler, true).c_str()); return true; } -- cgit v1.2.3