aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMachiavelli <none@none>2009-04-14 12:38:12 +0200
committerMachiavelli <none@none>2009-04-14 12:38:12 +0200
commit2b52663e421a4dd51f8aa6166cf7105d7e782d9a (patch)
tree9109b1872e9e5983bef9fbc089b3ddb7653d3e01
parent2104356342943b69e141c3fd0a7e4e149931345a (diff)
Ticket system changes by Disassembler: (TC1 rev 1358)
- Change uint16 closed guid to uint64 - Add createtime field --HG-- branch : trunk
-rw-r--r--sql/updates/2683_characters.sql1
-rw-r--r--sql/updates/2683_world.sql3
-rw-r--r--src/game/Language.h32
-rw-r--r--src/game/Level1.cpp5
-rw-r--r--src/game/TicketHandler.cpp1
-rw-r--r--src/game/TicketMgr.cpp14
-rw-r--r--src/game/TicketMgr.h3
7 files changed, 36 insertions, 23 deletions
diff --git a/sql/updates/2683_characters.sql b/sql/updates/2683_characters.sql
new file mode 100644
index 00000000000..688e151b430
--- /dev/null
+++ b/sql/updates/2683_characters.sql
@@ -0,0 +1 @@
+ALTER TABLE `gm_tickets` ADD COLUMN `createtime` int(10) NOT NULL after `message`;
diff --git a/sql/updates/2683_world.sql b/sql/updates/2683_world.sql
new file mode 100644
index 00000000000..ead79e05b61
--- /dev/null
+++ b/sql/updates/2683_world.sql
@@ -0,0 +1,3 @@
+DELETE FROM `trinity_string` WHERE `entry`=2025;
+INSERT INTO `trinity_string` (`entry`, `content_default`, `content_loc1`, `content_loc2`, `content_loc3`, `content_loc4`, `content_loc5`, `content_loc6`, `content_loc7`, `content_loc8`) VALUES
+('2025','|cff00ff00Created|r:|cff00ccff %s ago|r ',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
diff --git a/src/game/Language.h b/src/game/Language.h
index 8217193ea50..28c0a81c879 100644
--- a/src/game/Language.h
+++ b/src/game/Language.h
@@ -807,24 +807,24 @@ enum TrinityStrings
LANG_BG_AV_A_CAPTAIN_DEAD = 1232,
// FREE IDS 1233-9999
- // Ticket Strings 2000-2029
- LANG_COMMAND_TICKETNEW = 2000,
+ // Ticket Strings 2000-2029
+ LANG_COMMAND_TICKETNEW = 2000,
LANG_COMMAND_TICKETUPDATED = 2001,
- LANG_COMMAND_TICKETPLAYERABANDON = 2002,
- LANG_COMMAND_TICKETCLOSED = 2003,
- LANG_COMMAND_TICKETDELETED = 2004,
- LANG_COMMAND_TICKETNOTEXIST = 2005,
- LANG_COMMAND_TICKETCLOSEFIRST = 2006,
- LANG_COMMAND_TICKETALREADYASSIGNED = 2007,
- LANG_COMMAND_TICKETRELOAD = 2008,
- LANG_COMMAND_TICKETSHOWLIST = 2009,
+ LANG_COMMAND_TICKETPLAYERABANDON = 2002,
+ LANG_COMMAND_TICKETCLOSED = 2003,
+ LANG_COMMAND_TICKETDELETED = 2004,
+ LANG_COMMAND_TICKETNOTEXIST = 2005,
+ LANG_COMMAND_TICKETCLOSEFIRST = 2006,
+ LANG_COMMAND_TICKETALREADYASSIGNED = 2007,
+ LANG_COMMAND_TICKETRELOAD = 2008,
+ LANG_COMMAND_TICKETSHOWLIST = 2009,
LANG_COMMAND_TICKETSHOWONLINELIST = 2010,
LANG_COMMAND_TICKETSHOWCLOSEDLIST = 2011,
- LANG_COMMAND_TICKETASSIGNERROR_A = 2012,
- LANG_COMMAND_TICKETASSIGNERROR_B = 2013,
- LANG_COMMAND_TICKETNOTASSIGNED = 2014,
- LANG_COMMAND_TICKETUNASSIGNSECURITY = 2015,
- LANG_COMMAND_TICKETCANNOTCLOSE = 2016,
+ LANG_COMMAND_TICKETASSIGNERROR_A = 2012,
+ LANG_COMMAND_TICKETASSIGNERROR_B = 2013,
+ LANG_COMMAND_TICKETNOTASSIGNED = 2014,
+ LANG_COMMAND_TICKETUNASSIGNSECURITY = 2015,
+ LANG_COMMAND_TICKETCANNOTCLOSE = 2016,
LANG_COMMAND_TICKETLISTGUID = 2017,
LANG_COMMAND_TICKETLISTNAME = 2018,
LANG_COMMAND_TICKETLISTAGE = 2019,
@@ -833,7 +833,7 @@ enum TrinityStrings
LANG_COMMAND_TICKETLISTMESSAGE = 2022,
LANG_COMMAND_TICKETLISTCOMMENT = 2023,
LANG_COMMAND_TICKETLISTADDCOMMENT = 2024,
-
+ LANG_COMMAND_TICKETLISTAGECREATE = 2025,
// Trinity strings 5000-9999
LANG_COMMAND_FREEZE = 5000,
diff --git a/src/game/Level1.cpp b/src/game/Level1.cpp
index 831861c1ed8..452020e667b 100644
--- a/src/game/Level1.cpp
+++ b/src/game/Level1.cpp
@@ -293,6 +293,7 @@ bool ChatHandler::HandleGMTicketListCommand(const char* args)
std::stringstream ss;
ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, (*itr)->guid);
ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, (*itr)->name.c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTAGECREATE, (secsToTimeString(time(NULL) - (*itr)->createtime, true, false)).c_str());
ss << PGetParseString(LANG_COMMAND_TICKETLISTAGE, (secsToTimeString(time(NULL) - (*itr)->timestamp, true, false)).c_str());
if(objmgr.GetPlayerNameByGUID((*itr)->assignedToGM, gmname))
{
@@ -316,6 +317,7 @@ bool ChatHandler::HandleGMTicketListOnlineCommand(const char* args)
std::stringstream ss;
ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, (*itr)->guid);
ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, (*itr)->name.c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTAGECREATE, (secsToTimeString(time(NULL) - (*itr)->createtime, true, false)).c_str());
ss << PGetParseString(LANG_COMMAND_TICKETLISTAGE, (secsToTimeString(time(NULL) - (*itr)->timestamp, true, false)).c_str());
if(objmgr.GetPlayerNameByGUID((*itr)->assignedToGM, gmname))
{
@@ -338,6 +340,7 @@ bool ChatHandler::HandleGMTicketListClosedCommand(const char* args)
std::stringstream ss;
ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, (*itr)->guid);
ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, (*itr)->name.c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTAGECREATE, (secsToTimeString(time(NULL) - (*itr)->createtime, true, false)).c_str());
ss << PGetParseString(LANG_COMMAND_TICKETLISTAGE, (secsToTimeString(time(NULL) - (*itr)->timestamp, true, false)).c_str());
if(objmgr.GetPlayerNameByGUID((*itr)->assignedToGM, gmname))
{
@@ -365,6 +368,7 @@ bool ChatHandler::HandleGMTicketGetByIdCommand(const char* args)
std::stringstream ss;
ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, ticket->guid);
ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, ticket->name.c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTAGECREATE, (secsToTimeString(time(NULL) - ticket->createtime, true, false)).c_str());
ss << PGetParseString(LANG_COMMAND_TICKETLISTAGE, (secsToTimeString(time(NULL) - ticket->timestamp, true, false)).c_str());
if(objmgr.GetPlayerNameByGUID(ticket->assignedToGM, gmname))
{
@@ -395,6 +399,7 @@ bool ChatHandler::HandleGMTicketGetByNameCommand(const char* args)
std::stringstream ss;
ss << PGetParseString(LANG_COMMAND_TICKETLISTGUID, ticket->guid);
ss << PGetParseString(LANG_COMMAND_TICKETLISTNAME, ticket->name.c_str());
+ ss << PGetParseString(LANG_COMMAND_TICKETLISTAGECREATE, (secsToTimeString(time(NULL) - ticket->createtime, true, false)).c_str());
ss << PGetParseString(LANG_COMMAND_TICKETLISTAGE, (secsToTimeString(time(NULL) - ticket->timestamp, true, false)).c_str());
if(objmgr.GetPlayerNameByGUID(ticket->assignedToGM, gmname))
{
diff --git a/src/game/TicketHandler.cpp b/src/game/TicketHandler.cpp
index ff920cab04b..f8e0ef689ff 100644
--- a/src/game/TicketHandler.cpp
+++ b/src/game/TicketHandler.cpp
@@ -60,6 +60,7 @@ void WorldSession::HandleGMTicketCreateOpcode( WorldPacket & recv_data )
ticket->guid = ticketmgr.GenerateTicketID();
ticket->playerGuid = GetPlayer()->GetGUID();
ticket->message = ticketText;
+ ticket->createtime = time(NULL);
ticket->timestamp = time(NULL);
ticket->closed = 0;
ticket->assignedToGM = 0;
diff --git a/src/game/TicketMgr.cpp b/src/game/TicketMgr.cpp
index 82079105aef..3b6050d468b 100644
--- a/src/game/TicketMgr.cpp
+++ b/src/game/TicketMgr.cpp
@@ -111,7 +111,7 @@ 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`" );
+ QueryResult *result = CharacterDatabase.Query( "SELECT `guid`, `playerGuid`, `name`, `message`, `createtime`, `timestamp`, `closed`, `assignedto`, `comment` FROM `gm_tickets`" );
GM_Ticket *ticket;
if(!result)
@@ -126,10 +126,11 @@ void TicketMgr::LoadGMTickets()
ticket->playerGuid = fields[1].GetUInt64();
ticket->name = fields[2].GetString();
ticket->message = fields[3].GetString();
- ticket->timestamp = fields[4].GetUInt32();
- ticket->closed = fields[5].GetUInt16();
- ticket->assignedToGM = fields[6].GetUInt64();
- ticket->comment = fields[7].GetString();
+ ticket->createtime = fields[4].GetUInt64();
+ ticket->timestamp = fields[5].GetUInt64();
+ ticket->closed = fields[6].GetUInt64();
+ ticket->assignedToGM = fields[7].GetUInt64();
+ ticket->comment = fields[8].GetString();
AddGMTicket(ticket, true);
@@ -172,11 +173,12 @@ void TicketMgr::SaveGMTicket(GM_Ticket* ticket)
std::string msg = ticket->message;
CharacterDatabase.escape_string(msg);
std::stringstream ss;
- ss << "REPLACE INTO `gm_tickets` (`guid`, `playerGuid`, `name`, `message`, `timestamp`, `closed`, `assignedto`, `comment`) VALUES('";
+ ss << "REPLACE INTO `gm_tickets` (`guid`, `playerGuid`, `name`, `message`, `createtime`, `timestamp`, `closed`, `assignedto`, `comment`) VALUES('";
ss << ticket->guid << "', '";
ss << ticket->playerGuid << "', '";
ss << ticket->name << "', '";
ss << msg << "', '" ;
+ ss << ticket->createtime << "', '";
ss << ticket->timestamp << "', '";
ss << ticket->closed << "', '";
ss << ticket->assignedToGM << "', '";
diff --git a/src/game/TicketMgr.h b/src/game/TicketMgr.h
index a180268a552..d86ecc106b0 100644
--- a/src/game/TicketMgr.h
+++ b/src/game/TicketMgr.h
@@ -33,8 +33,9 @@ struct GM_Ticket
uint64 playerGuid;
std::string name;
std::string message;
+ uint64 createtime;
uint64 timestamp;
- uint16 closed;
+ uint64 closed;
uint64 assignedToGM;
std::string comment;
};