Panel: plugin integrations (LuckPerms ranks + group mapping, reports), server event queue, developer API endpoints

This commit is contained in:
Claude committed 2026-09-30 18:06:18 +00:00
1 parent c256c15d0e
commit badb5fccc0
10 files changed
+906 -2

No files matched your search

+5 -1
View File
@@ -248,6 +248,10 @@ pub struct Group {
#[serde(default)]
#[sqlx(default)]
members: i64,
/// LuckPerms group this panel group is mapped to (empty: none).
#[serde(default)]
#[sqlx(default)]
luckperms_group: String,
}
fn default_color() -> String {
"#7c5cff".into()
@@ -256,7 +260,7 @@ fn default_color() -> String {
pub async fn list_groups(_: AdminUser, State(state): State<AppState>) -> AppResult<Json<Vec<Group>>> {
Ok(Json(
sqlx::query_as(
"SELECT g.id, g.name, g.color, (SELECT COUNT(*) FROM user_groups ug WHERE ug.group_id = g.id) AS members FROM groups g ORDER BY g.name",
"SELECT g.id, g.name, g.color, (SELECT COUNT(*) FROM user_groups ug WHERE ug.group_id = g.id) AS members, g.luckperms_group FROM groups g ORDER BY g.name",
)
.fetch_all(&state.db)
.await?,