From 4718cec54aad3e95fed207d81e099df685553cb8 Mon Sep 17 00:00:00 2001
From: Sadie Powell
Date: Mon, 1 Jul 2024 12:57:04 +0100
Subject: Add a DBML schema for the sqloper module and update the tables.

---
 docs/sql/sqloper/pgsql.sql | 48 ++++++++++++++++++++++++++++++++++------------
 1 file changed, 36 insertions(+), 12 deletions(-)

(limited to 'docs/sql/sqloper/pgsql.sql')

diff --git a/docs/sql/sqloper/pgsql.sql b/docs/sql/sqloper/pgsql.sql
index 954bc84fa..a572fe4a8 100644
--- a/docs/sql/sqloper/pgsql.sql
+++ b/docs/sql/sqloper/pgsql.sql
@@ -1,13 +1,37 @@
-CREATE TABLE ircd_opers (
-    "id" serial NOT NULL,
-    "name" text NOT NULL,
-    "password" text NOT NULL,
-    "hash" text,
-    "host" text NOT NULL,
-    "type" text NOT NULL,
-    "fingerprint" text,
-    "autologin" smallint NOT NULL DEFAULT 0,
-    "active" smallint NOT NULL DEFAULT 1
+CREATE TYPE "autologin" AS ENUM (
+  'strict',
+  'relaxed',
+  'never'
+);
+
+CREATE TABLE "ircd_opers" (
+  "active" bool NOT NULL DEFAULT true,
+  "name" text NOT NULL,
+  "password" text NOT NULL,
+  "host" text NOT NULL,
+  "type" text NOT NULL,
+
+  "autologin" autologin,
+  "class" text,
+  "hash" text,
+  "maxchans" bigint,
+  "nopassword" bool,
+  "vhost" text,
+
+  "commands" text,
+  "privs" text,
+  "chanmodes" text,
+  "usermodes" text,
+  "snomasks" text,
+
+  "account" text,
+  "autojoin" text,
+  "automotd" bool,
+  "fingerprint" text,
+  "level" bigint,
+  "modes" text,
+  "motd" bool,
+  "override" text,
+  "sslonly" bool,
+  "swhois" text
 );
-ALTER TABLE ONLY ircd_opers
-    ADD CONSTRAINT ircd_opers_pkey PRIMARY KEY (id);
-- 
cgit v1.3.1-10-gc9f91

