getZoneShutDownDelay converted to QueryDatabase

This commit is contained in:
Arthur Ice 2014-08-21 12:51:09 -07:00
parent 699c8cc1eb
commit 765eaf7f4f

View File

@ -1840,35 +1840,25 @@ bool ZoneDatabase::LoadBlockedSpells(int32 blockedSpellsCount, ZoneSpellsBlocked
int ZoneDatabase::getZoneShutDownDelay(uint32 zoneID, uint32 version) int ZoneDatabase::getZoneShutDownDelay(uint32 zoneID, uint32 version)
{ {
char errbuf[MYSQL_ERRMSG_SIZE]; std::string query = StringFormat("SELECT shutdowndelay FROM zone "
char *query = 0; "WHERE zoneidnumber = %i AND (version=%i OR version=0) "
MYSQL_RES *result; "ORDER BY version DESC", zoneID, version);
MYSQL_ROW row; auto results = QueryDatabase(query);
if (!results.Success()) {
if (RunQuery(query, MakeAnyLenString(&query, "SELECT shutdowndelay FROM zone WHERE zoneidnumber=%i AND (version=%i OR version=0) ORDER BY version DESC", zoneID, version), errbuf, &result)) std::cerr << "Error in getZoneShutDownDelay query '" << query << "' " << results.ErrorMessage().c_str() << std::endl;
{
if (mysql_num_rows(result) > 0) {
row = mysql_fetch_row(result);
int retVal = atoi(row[0]);
mysql_free_result(result);
safe_delete_array(query);
return (retVal);
}
else {
std::cerr << "Error in getZoneShutDownDelay no result '" << query << "' " << errbuf << std::endl;
mysql_free_result(result);
safe_delete_array(query);
return (RuleI(Zone, AutoShutdownDelay)); return (RuleI(Zone, AutoShutdownDelay));
} }
}
else { if (results.RowCount() == 0) {
std::cerr << "Error in getZoneShutDownDelay query '" << query << "' " << errbuf << std::endl; std::cerr << "Error in getZoneShutDownDelay no result '" << query << "' " << std::endl;
safe_delete_array(query);
}
return (RuleI(Zone, AutoShutdownDelay)); return (RuleI(Zone, AutoShutdownDelay));
} }
auto row = results.begin();
return atoi(row[0]);
}
uint32 ZoneDatabase::GetKarma(uint32 acct_id) uint32 ZoneDatabase::GetKarma(uint32 acct_id)
{ {
char errbuf[MYSQL_ERRMSG_SIZE]; char errbuf[MYSQL_ERRMSG_SIZE];