command_viewpetition converted to QueryDatabase

This commit is contained in:
Arthur Ice 2014-10-04 10:01:59 -07:00
parent 4d768474e8
commit 114d0ae11b

View File

@ -1510,33 +1510,29 @@ void command_movechar(Client *c, const Seperator *sep)
void command_viewpetition(Client *c, const Seperator *sep) void command_viewpetition(Client *c, const Seperator *sep)
{ {
if (sep->arg[1][0] == 0) if (sep->arg[1][0] == 0) {
c->Message(0, "Usage: #viewpetition (petition number) Type #listpetition for a list"); c->Message(0, "Usage: #viewpetition (petition number) Type #listpetition for a list");
else return;
{ }
char errbuf[MYSQL_ERRMSG_SIZE];
char *query = 0; c->Message(13," ID : Character Name , Petition Text");
int queryfound = 0;
MYSQL_RES *result; std::string query = "SELECT petid, charname, petitiontext FROM petitions ORDER BY petid";
MYSQL_ROW row; auto results = database.QueryDatabase(query);
c->Message(13," ID : Character Name , Petition Text"); if (!results.Success())
if (database.RunQuery(query, MakeAnyLenString(&query, "SELECT petid, charname, petitiontext from petitions order by petid"), errbuf, &result)) return;
{
while ((row = mysql_fetch_row(result))) LogFile->write(EQEMuLog::Normal,"View petition request from %s, petition number: %i", c->GetName(), atoi(sep->argplus[1]) );
{
if (strcasecmp(row[0],sep->argplus[1])== 0) if (results.RowCount() == 0) {
{ c->Message(13,"There was an error in your request: ID not found! Please check the Id and try again.");
queryfound=1; return;
c->Message(15, " %s: %s , %s ",row[0],row[1],row[2]); }
}
} for (auto row = results.begin(); row != results.end(); ++row)
LogFile->write(EQEMuLog::Normal,"View petition request from %s, petition number:", c->GetName(), atoi(sep->argplus[1]) ); if (strcasecmp(row[0], sep->argplus[1]) == 0)
if (queryfound==0) c->Message(15, " %s: %s , %s ", row[0], row[1], row[2]);
c->Message(13,"There was an error in your request: ID not found! Please check the Id and try again.");
mysql_free_result(result);
}
safe_delete_array(query);
}
} }
void command_petitioninfo(Client *c, const Seperator *sep) void command_petitioninfo(Client *c, const Seperator *sep)