be1389420b
* SQL format checking, 1. * SQL format checking, 2. * SQL format checking, 3. * SQL format checking, 4. * SQL format checking, 5. * Running pg_format * Getting rid of comment. * Upping pg_format version. * Using git ls-files for sql format check. * Fixing sql lints. * Addressing PR comments.
76 lines
2.8 KiB
SQL
76 lines
2.8 KiB
SQL
CREATE TABLE mod_remove_post (
|
|
id serial PRIMARY KEY,
|
|
mod_user_id int REFERENCES user_ ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
post_id int REFERENCES post ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
reason text,
|
|
removed boolean DEFAULT TRUE,
|
|
when_ timestamp NOT NULL DEFAULT now()
|
|
);
|
|
|
|
CREATE TABLE mod_lock_post (
|
|
id serial PRIMARY KEY,
|
|
mod_user_id int REFERENCES user_ ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
post_id int REFERENCES post ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
locked boolean DEFAULT TRUE,
|
|
when_ timestamp NOT NULL DEFAULT now()
|
|
);
|
|
|
|
CREATE TABLE mod_remove_comment (
|
|
id serial PRIMARY KEY,
|
|
mod_user_id int REFERENCES user_ ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
comment_id int REFERENCES COMMENT ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
reason text,
|
|
removed boolean DEFAULT TRUE,
|
|
when_ timestamp NOT NULL DEFAULT now()
|
|
);
|
|
|
|
CREATE TABLE mod_remove_community (
|
|
id serial PRIMARY KEY,
|
|
mod_user_id int REFERENCES user_ ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
community_id int REFERENCES community ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
reason text,
|
|
removed boolean DEFAULT TRUE,
|
|
expires timestamp,
|
|
when_ timestamp NOT NULL DEFAULT now()
|
|
);
|
|
|
|
-- TODO make sure you can't ban other mods
|
|
CREATE TABLE mod_ban_from_community (
|
|
id serial PRIMARY KEY,
|
|
mod_user_id int REFERENCES user_ ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
other_user_id int REFERENCES user_ ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
community_id int REFERENCES community ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
reason text,
|
|
banned boolean DEFAULT TRUE,
|
|
expires timestamp,
|
|
when_ timestamp NOT NULL DEFAULT now()
|
|
);
|
|
|
|
CREATE TABLE mod_ban (
|
|
id serial PRIMARY KEY,
|
|
mod_user_id int REFERENCES user_ ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
other_user_id int REFERENCES user_ ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
reason text,
|
|
banned boolean DEFAULT TRUE,
|
|
expires timestamp,
|
|
when_ timestamp NOT NULL DEFAULT now()
|
|
);
|
|
|
|
CREATE TABLE mod_add_community (
|
|
id serial PRIMARY KEY,
|
|
mod_user_id int REFERENCES user_ ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
other_user_id int REFERENCES user_ ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
community_id int REFERENCES community ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
removed boolean DEFAULT FALSE,
|
|
when_ timestamp NOT NULL DEFAULT now()
|
|
);
|
|
|
|
-- When removed is false that means kicked
|
|
CREATE TABLE mod_add (
|
|
id serial PRIMARY KEY,
|
|
mod_user_id int REFERENCES user_ ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
other_user_id int REFERENCES user_ ON UPDATE CASCADE ON DELETE CASCADE NOT NULL,
|
|
removed boolean DEFAULT FALSE,
|
|
when_ timestamp NOT NULL DEFAULT now()
|
|
);
|
|
|