*Fix issue with ticket message and issue with ticket number increasing by 2 - by |Paradox|

--HG--
branch : trunk
This commit is contained in:
Blaymoira
2009-01-09 22:54:58 +01:00
parent c2ee7cb4d3
commit 099aadf3e1
3 changed files with 16 additions and 4 deletions

View File

@@ -36,6 +36,8 @@ void WorldSession::HandleGMTicketCreateOpcode( WorldPacket & recv_data )
// always do a packet check
CHECK_PACKET_SIZE(recv_data, 4*4+1+2*4);
uint32 map;
float x, y, z;
std::string ticketText = "";
std::string ticketText2 = "";
GM_Ticket *ticket = new GM_Ticket;
@@ -43,7 +45,12 @@ void WorldSession::HandleGMTicketCreateOpcode( WorldPacket & recv_data )
WorldPacket data(SMSG_GMTICKET_CREATE, 4);
// recv Data
recv_data >> ticketText;
//TODO: Add map coordinates to tickets.
recv_data >> map;
recv_data >> x;
recv_data >> y;
recv_data >> z;
recv_data >> ticketText;
// get additional data, rarely used
recv_data >> ticketText2;

View File

@@ -108,11 +108,12 @@ void TicketMgr::DeleteGMTicketPermanently(uint64 ticketGuid)
void TicketMgr::LoadGMTickets()
{
InitTicketID();
// Delete all out of object holder
GM_TicketList.clear();
QueryResult *result = CharacterDatabase.Query( "SELECT `guid`, `playerGuid`, `name`, `message`, `timestamp`, `closed`, `assignedto`, `comment` FROM `gm_tickets` WHERE `closed` = '0'" );
GM_Ticket *ticket;
if(!result)
return;
@@ -190,7 +191,7 @@ void TicketMgr::UpdateGMTicket(GM_Ticket *ticket)
SaveGMTicket(ticket);
}
uint64 TicketMgr::GenerateTicketID()
void TicketMgr::InitTicketID()
{
QueryResult *result = CharacterDatabase.Query("SELECT MAX(guid) FROM gm_tickets");
if(result)
@@ -198,6 +199,9 @@ uint64 TicketMgr::GenerateTicketID()
m_ticketid = result->Fetch()[0].GetUInt64() + 1;
delete result;
}
}
uint64 TicketMgr::GenerateTicketID()
{
return ++m_ticketid;
}
}

View File

@@ -61,6 +61,7 @@ class TicketMgr
void SaveGMTicket(GM_Ticket* ticket);
uint64 GenerateTicketID();
void InitTicketID();
GM_Ticket* GetGMTicket(uint64 ticketGuid);
GM_Ticket* GetGMTicketByPlayer(uint64 playerGuid);
GM_Ticket* GetGMTicketByName(const char *name);