summaryrefslogtreecommitdiff
path: root/migrations
diff options
context:
space:
mode:
Diffstat (limited to 'migrations')
-rw-r--r--migrations/20241026174345_init.sql15
1 files changed, 12 insertions, 3 deletions
diff --git a/migrations/20241026174345_init.sql b/migrations/20241026174345_init.sql
index ad1f65f..8f3e8a1 100644
--- a/migrations/20241026174345_init.sql
+++ b/migrations/20241026174345_init.sql
@@ -3,6 +3,7 @@ CREATE TABLE messages (
id INTEGER PRIMARY KEY,
sender_id INT NOT NULL REFERENCES users (id),
content TEXT NOT NULL,
+ edited BOOLEAN NOT NULL CHECK (edited IN (0, 1)),
frequency_id INT REFERENCES frequencies (id),
receiver_id INT REFERENCES users (id),
@@ -16,24 +17,32 @@ CREATE TABLE messages (
CREATE TABLE users (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
- public_key BLOB NOT NULL
+ public_key BLOB NOT NULL,
+ bio TEXT
);
CREATE TABLE networks (
id INTEGER PRIMARY KEY,
+ owner_id INT NOT NULL REFERENCES users (id),
name TEXT NOT NULL,
- owner_id INT NOT NULL REFERENCES users (id)
+ icon TEXT NOT NULL,
+ bg TEXT NULL,
+ fg TEXT NOT NULL
);
CREATE TABLE frequencies (
id INTEGER PRIMARY KEY,
network_id INT NOT NULL REFERENCES networks (id),
- name TEXT NOT NULL
+ name TEXT NOT NULL,
+ color TEXT,
+ perms INT NOT NULL CHECK (perms IN (0, 1, 2)),
+ position INT NOT NULL
);
CREATE TABLE users_networks (
user_id INT NOT NULL REFERENCES users (id),
network_id INT NOT NULL REFERENCES networks (id),
+ is_admin BOOLEAN NOT NULL CHECK (is_admin IN (0, 1)),
PRIMARY KEY (user_id, network_id)
);