IsBotNameValid converted to QueryDatabase

This commit is contained in:
Arthur Ice 2014-09-03 13:59:05 -07:00
parent 118c2a9db9
commit 9eb3907d45

View File

@ -2339,35 +2339,29 @@ bool Bot::IsValidName() {
} }
bool Bot::IsBotNameAvailable(std::string* errorMessage) { bool Bot::IsBotNameAvailable(std::string* errorMessage) {
bool Result = false;
if(this->GetCleanName()) { if(!this->GetCleanName())
char* Query = 0; return false;
char TempErrorMessageBuffer[MYSQL_ERRMSG_SIZE];
MYSQL_RES* DatasetResult;
MYSQL_ROW DataRow;
if(!database.RunQuery(Query, MakeAnyLenString(&Query, "SELECT COUNT(id) FROM vwBotCharacterMobs WHERE name LIKE '%s'", this->GetCleanName()), TempErrorMessageBuffer, &DatasetResult)) { std::string query = StringFormat("SELECT COUNT(id) FROM vwBotCharacterMobs "
*errorMessage = std::string(TempErrorMessageBuffer); "WHERE name LIKE '%s'", this->GetCleanName());
} auto results = database.QueryDatabase(query);
else { if(!results.Success()) {
uint32 ExistingNameCount = 0; *errorMessage = std::string(results.ErrorMessage());
return false;
}
while(DataRow = mysql_fetch_row(DatasetResult)) { uint32 existingNameCount = 0;
ExistingNameCount = atoi(DataRow[0]);
break;
}
if(ExistingNameCount == 0) for (auto row = results.begin(); row != results.end(); ++row) {
Result = true; existingNameCount = atoi(row[0]);
break;
}
mysql_free_result(DatasetResult); if(existingNameCount != 0)
} return false;
safe_delete(Query); return true;
}
return Result;
} }
bool Bot::Save() { bool Bot::Save() {