mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2026-10-02 02:43:44 +00:00
feat(dashboard): pending guild names count on the Review Queue and Guilds badges
The dashboard snapshot counts guilds whose name waits for moderation; the moderation counts (WebSocket and /api/moderation/counts) include it, the Review Queue badge adds it for staff with guilds_manage, and the Guilds menu entry has its own badge. Check: create a guild with a name off the allow list: both badges go up; approve it: they go down. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -19,6 +19,7 @@ public:
|
||||
uint64_t unresolvedBugReports{};
|
||||
uint64_t petNames{};
|
||||
uint64_t pendingPetNames{};
|
||||
uint64_t pendingGuildNames{}; // guilds whose name waits for moderation
|
||||
uint64_t activityLogMaxId{};
|
||||
uint64_t chatLogMaxId{};
|
||||
uint64_t commandLogMaxId{};
|
||||
|
||||
@@ -19,6 +19,7 @@ namespace {
|
||||
"(SELECT COUNT(*) FROM bug_reports WHERE resolved_time IS NULL) AS unresolved_bug_reports, "
|
||||
"(SELECT COUNT(*) FROM pet_names) AS pet_names, "
|
||||
"(SELECT COUNT(*) FROM pet_names WHERE approved = 1) AS pending_pet_names, "
|
||||
"(SELECT COUNT(*) FROM guilds WHERE name_status = 1) AS pending_guild_names, "
|
||||
"(SELECT COALESCE(MAX(id), 0) FROM activity_log) AS activity_log_max_id, "
|
||||
"(SELECT COALESCE(MAX(id), 0) FROM chat_log) AS chat_log_max_id, "
|
||||
"(SELECT COALESCE(MAX(id), 0) FROM command_log) AS command_log_max_id, "
|
||||
@@ -255,6 +256,7 @@ IDashboardStats::Snapshot MySQLDatabase::GetDashboardSnapshot() {
|
||||
snapshot.unresolvedBugReports = result->getUInt64("unresolved_bug_reports");
|
||||
snapshot.petNames = result->getUInt64("pet_names");
|
||||
snapshot.pendingPetNames = result->getUInt64("pending_pet_names");
|
||||
snapshot.pendingGuildNames = result->getUInt64("pending_guild_names");
|
||||
snapshot.activityLogMaxId = result->getUInt64("activity_log_max_id");
|
||||
snapshot.chatLogMaxId = result->getUInt64("chat_log_max_id");
|
||||
snapshot.commandLogMaxId = result->getUInt64("command_log_max_id");
|
||||
|
||||
@@ -19,6 +19,7 @@ namespace {
|
||||
"(SELECT COUNT(*) FROM bug_reports WHERE resolved_time IS NULL) AS unresolved_bug_reports, "
|
||||
"(SELECT COUNT(*) FROM pet_names) AS pet_names, "
|
||||
"(SELECT COUNT(*) FROM pet_names WHERE approved = 1) AS pending_pet_names, "
|
||||
"(SELECT COUNT(*) FROM guilds WHERE name_status = 1) AS pending_guild_names, "
|
||||
"(SELECT COALESCE(MAX(id), 0) FROM activity_log) AS activity_log_max_id, "
|
||||
"(SELECT COALESCE(MAX(id), 0) FROM chat_log) AS chat_log_max_id, "
|
||||
"(SELECT COALESCE(MAX(id), 0) FROM command_log) AS command_log_max_id, "
|
||||
@@ -260,6 +261,7 @@ IDashboardStats::Snapshot SQLiteDatabase::GetDashboardSnapshot() {
|
||||
snapshot.unresolvedBugReports = result.getInt64Field("unresolved_bug_reports");
|
||||
snapshot.petNames = result.getInt64Field("pet_names");
|
||||
snapshot.pendingPetNames = result.getInt64Field("pending_pet_names");
|
||||
snapshot.pendingGuildNames = result.getInt64Field("pending_guild_names");
|
||||
snapshot.activityLogMaxId = result.getInt64Field("activity_log_max_id");
|
||||
snapshot.chatLogMaxId = result.getInt64Field("chat_log_max_id");
|
||||
snapshot.commandLogMaxId = result.getInt64Field("command_log_max_id");
|
||||
|
||||
Reference in New Issue
Block a user