All pastes #966542 Raw Edit

Etwas

public text v1 · immutable
·published 2008-04-01 20:22 UTC
rendered paste body
Index: src/game/Chat.h
===================================================================
--- src/game/Chat.h	(Revision 5524)
+++ src/game/Chat.h	(Arbeitskopie)
@@ -350,7 +350,7 @@
         WorldSession * m_session;
 
         // Utility methods for commands
-        void ShowTicket(uint64 guid, uint32 category, char const* text);
+        void ShowTicket(uint64 guid, uint32 category, char const* text, char const* time);
         uint32 GetTicketIDByNum(uint32 num);
 
         // common global flag
Index: src/game/Level2.cpp
===================================================================
--- src/game/Level2.cpp	(Revision 5524)
+++ src/game/Level2.cpp	(Arbeitskopie)
@@ -1525,13 +1525,13 @@
 }
 
 //show tickets
-void ChatHandler::ShowTicket(uint64 guid, uint32 category, char const* text)
+void ChatHandler::ShowTicket(uint64 guid, uint32 category, char const* text, char const* time)
 {
     std::string name;
     if(!objmgr.GetPlayerNameByGUID(guid,name))
         name = GetMangosString(LANG_UNKNOWN);
 
-    PSendSysMessage(LANG_COMMAND_TICKETVIEW, name.c_str(),category,text);
+    PSendSysMessage(LANG_COMMAND_TICKETVIEW, name.c_str(),time,category,text);
 }
 
 //ticket commands
@@ -1576,25 +1576,23 @@
     int num = atoi(px);
     if(num > 0)
     {
-        QueryResult *result = CharacterDatabase.Query("SELECT guid,ticket_category,ticket_text FROM character_ticket");
+        QueryResult *result = CharacterDatabase.PQuery("SELECT guid,ticket_category,ticket_text,ticket_lastchange FROM character_ticket ORDER BY `ticket_id` ASC LIMIT %d,1",num-1);
 
-        if(!result || uint64(num) > result->GetRowCount())
+        if(!result)
         {
             PSendSysMessage(LANG_COMMAND_TICKENOTEXIST, num);
             delete result;
             return true;
         }
 
-        for(int i = 1; i < num; ++i)
-            result->NextRow();
-
         Field* fields = result->Fetch();
 
         uint64 guid = fields[0].GetUInt64();
         uint32 category = fields[1].GetUInt32();
         char const* text = fields[2].GetString();
+        char const* time = fields[3].GetString();
 
-        ShowTicket(guid,category,text);
+        ShowTicket(guid,category,text,time);
         delete result;
         return true;
     }
@@ -1609,17 +1607,18 @@
         return false;
 
     // ticket $char_name
-    QueryResult *result = CharacterDatabase.PQuery("SELECT guid,ticket_category,ticket_text FROM character_ticket WHERE guid = '%u'",GUID_LOPART(guid));
+    QueryResult *result = CharacterDatabase.PQuery("SELECT ticket_category,ticket_text,ticket_lastchange FROM character_ticket WHERE guid = '%u' ORDER BY `ticket_id` ASC",GUID_LOPART(guid));
 
     if(!result)
         return false;
 
     Field* fields = result->Fetch();
 
-    uint32 category = fields[1].GetUInt32();
-    char const* text = fields[2].GetString();
+    uint32 category = fields[0].GetUInt32();
+    char const* text = fields[1].GetString();
+    char const* time = fields[2].GetString();
 
-    ShowTicket(guid,category,text);
+    ShowTicket(guid,category,text,time);
     delete result;
 
     return true;