Store guild-specific settings (roles, channels, moderation options) in database instead of config file, enabling per-guild configuration and runtime updates without redeployment.
18 lines
631 B
SQL
18 lines
631 B
SQL
CREATE TABLE "guild_settings" (
|
|
"guild_id" bigint PRIMARY KEY NOT NULL,
|
|
"student_role_id" bigint,
|
|
"visitor_role_id" bigint,
|
|
"color_role_ids" jsonb DEFAULT '[]'::jsonb,
|
|
"welcome_channel_id" bigint,
|
|
"welcome_message" text,
|
|
"feedback_channel_id" bigint,
|
|
"terminal_channel_id" bigint,
|
|
"terminal_message_id" bigint,
|
|
"moderation_log_channel_id" bigint,
|
|
"moderation_dm_on_warn" jsonb DEFAULT 'true'::jsonb,
|
|
"moderation_auto_timeout_threshold" jsonb,
|
|
"feature_overrides" jsonb DEFAULT '{}'::jsonb,
|
|
"created_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
"updated_at" timestamp with time zone DEFAULT now() NOT NULL
|
|
);
|