X-Git-Url: https://code.wpia.club/?p=motion.git;a=blobdiff_plain;f=sql%2Fschema.sql;h=690425bdbcf697509ac116210c89fd62181190ee;hp=290b9b32deb0b16e4f9fbfff8431b5eb14998d67;hb=1653400a1d07f3433e1f8e10f484de9f88593c3f;hpb=224b4a836fd7588b653baf91b004a7ae62ec49c9 diff --git a/sql/schema.sql b/sql/schema.sql index 290b9b3..690425b 100644 --- a/sql/schema.sql +++ b/sql/schema.sql @@ -1,5 +1,8 @@ DROP TABLE IF EXISTS voter; -CREATE TABLE voter (id serial NOT NULL, email VARCHAR(255) NOT NULL, PRIMARY KEY(id)); +CREATE TABLE voter (id serial NOT NULL, + email VARCHAR(255) NOT NULL, + host VARCHAR(500) NOT NULL, + PRIMARY KEY(id)); DROP TABLE IF EXISTS motion; @@ -7,6 +10,7 @@ CREATE TABLE motion (id serial NOT NULL, identifier VARCHAR(20) NOT NULL, name VARCHAR(250) NOT NULL, type VARCHAR(250) NOT NULL, + host VARCHAR(500) NOT NULL, content text NOT NULL, posed timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, posed_by int NOT NULL, @@ -24,8 +28,21 @@ CREATE TABLE vote (motion_id INTEGER NOT NULL, voter_id INTEGER NOT NULL, result vote_type NOT NULL, entered timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + proxy_id INTEGER NOT NULL, PRIMARY KEY(motion_id, voter_id)); +DROP TABLE IF EXISTS proxy; +CREATE TABLE proxy (id serial NOT NULL, + voter_id INTEGER NOT NULL, + proxy_id INTEGER NOT NULL, + granted timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + granted_by int NOT NULL, + revoked timestamp NULL DEFAULT NULL, + revoked_by int NULL DEFAULT NULL, + PRIMARY KEY(id)); +CREATE INDEX proxy_voter ON proxy (voter_id); +CREATE INDEX proxy_proxy ON proxy (proxy_id); + DROP TABLE IF EXISTS schema_version; CREATE TABLE schema_version (version INTEGER NOT NULL); -INSERT INTO schema_version(version) VALUES(1); +INSERT INTO schema_version(version) VALUES(6);