LoadNewMerchantData converted to QueryDatabase

This commit is contained in:
Arthur Ice 2014-08-20 15:36:46 -07:00
parent f0abaad84f
commit 01382e87a0

View File

@ -451,29 +451,29 @@ void Zone::LoadTempMerchantData_result(MYSQL_RES* result) {
//there should prolly be a temp counterpart of this... //there should prolly be a temp counterpart of this...
void Zone::LoadNewMerchantData(uint32 merchantid){ void Zone::LoadNewMerchantData(uint32 merchantid){
char errbuf[MYSQL_ERRMSG_SIZE];
char *query = 0;
MYSQL_RES *result;
MYSQL_ROW row;
std::list<MerchantList> merlist; std::list<MerchantList> merlist;
if (database.RunQuery(query, MakeAnyLenString(&query, "SELECT item, slot, faction_required, level_required, alt_currency_cost, classes_required FROM merchantlist WHERE merchantid=%d", merchantid), errbuf, &result)) { std::string query = StringFormat("SELECT item, slot, faction_required, level_required, alt_currency_cost, "
while((row = mysql_fetch_row(result))) { "classes_required FROM merchantlist WHERE merchantid=%d", merchantid);
MerchantList ml; auto results = database.QueryDatabase(query);
ml.id = merchantid; if (!results.Success()) {
ml.item = atoul(row[0]); LogFile->write(EQEMuLog::Error, "Error in LoadNewMerchantData query '%s' %s", query.c_str(), results.ErrorMessage().c_str());
ml.slot = atoul(row[1]); return;
ml.faction_required = atoul(row[2]); }
ml.level_required = atoul(row[3]);
ml.alt_currency_cost = atoul(row[3]); for(auto row = results.begin(); row != results.end(); ++row) {
ml.classes_required = atoul(row[4]); MerchantList ml;
merlist.push_back(ml); ml.id = merchantid;
} ml.item = atoul(row[0]);
merchanttable[merchantid] = merlist; ml.slot = atoul(row[1]);
mysql_free_result(result); ml.faction_required = atoul(row[2]);
} ml.level_required = atoul(row[3]);
else ml.alt_currency_cost = atoul(row[3]);
LogFile->write(EQEMuLog::Error, "Error in LoadNewMerchantData query '%s' %s", query, errbuf); ml.classes_required = atoul(row[4]);
safe_delete_array(query); merlist.push_back(ml);
}
merchanttable[merchantid] = merlist;
} }
void Zone::LoadMerchantData_result(MYSQL_RES* result) { void Zone::LoadMerchantData_result(MYSQL_RES* result) {