Built utility function ClearAllRaidDetails

This commit is contained in:
Arthur Ice 2014-07-06 11:44:59 -07:00 committed by Arthur Ice
parent 34739b71b3
commit e81e47e9c5
2 changed files with 23 additions and 9 deletions

View File

@ -2018,16 +2018,29 @@ void Database::ClearAllRaids(void)
std::cout << "Unable to clear raids: " << results.ErrorMessage() << std::endl; std::cout << "Unable to clear raids: " << results.ErrorMessage() << std::endl;
} }
void Database::ClearRaidDetails(uint32 rid) { void Database::ClearAllRaidDetails(void)
char errbuf[MYSQL_ERRMSG_SIZE]; {
char *query = 0; char *query = nullptr;
if(rid == 0) { //clear all raids
if (!RunQuery(query, MakeAnyLenString(&query, "delete from raid_details"), errbuf)) if (!RunQuery(query, MakeAnyLenString(&query, "delete from raid_details"), errbuf))
printf("Unable to clear raid details: %s\n",errbuf); printf("Unable to clear raid details: %s\n",errbuf);
} else { //clear a specific group safe_delete_array(query);
return;
}
void Database::ClearRaidDetails(uint32 rid) {
char *query = nullptr;
if(rid == 0)
{
//clear all raids
ClearAllRaidDetails();
return;
}
//clear a specific group
if (!RunQuery(query, MakeAnyLenString(&query, "delete from raid_details where raidid = %lu", (unsigned long)rid), errbuf)) if (!RunQuery(query, MakeAnyLenString(&query, "delete from raid_details where raidid = %lu", (unsigned long)rid), errbuf))
printf("Unable to clear raid details: %s\n",errbuf); printf("Unable to clear raid details: %s\n",errbuf);
}
safe_delete_array(query); safe_delete_array(query);
} }

View File

@ -276,6 +276,7 @@ private:
* Raid, utility methods. * Raid, utility methods.
*/ */
void ClearAllRaids(); void ClearAllRaids();
void ClearAllRaidDetails();
}; };
bool FetchRowMap(MYSQL_RES *result, std::map<std::string,std::string> &rowmap); bool FetchRowMap(MYSQL_RES *result, std::map<std::string,std::string> &rowmap);