X-Git-Url: https://git.sesse.net/?p=pr0n;a=blobdiff_plain;f=sql%2Fpr0n.sql;h=f3f2087e6ce7b8d7db298c1d60841d4d655868a4;hp=5fd04e7e9da4872719e7b1cbe9eaf257b0d53077;hb=359f611c35bc516873c35d5102ebb3093e73f58a;hpb=4c7426477a73edd5ad88bfebda56575019d5ca06 diff --git a/sql/pr0n.sql b/sql/pr0n.sql index 5fd04e7..f3f2087 100644 --- a/sql/pr0n.sql +++ b/sql/pr0n.sql @@ -3,7 +3,7 @@ CREATE TABLE events ( "date" character varying NOT NULL, name character varying NOT NULL, vhost character varying NOT NULL, - last_update timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + hidden boolean NOT NULL DEFAULT false, PRIMARY KEY (vhost, event) ); @@ -13,13 +13,16 @@ CREATE TABLE last_picture_cache ( vhost varchar NOT NULL, event varchar NOT NULL, last_picture timestamp without time zone, + last_update timestamp with time zone NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (vhost,event), - FOREIGN KEY (vhost,event) REFERNECES events(vhost,event) + FOREIGN KEY (vhost,event) REFERENCES events(vhost,event) ); +CREATE SEQUENCE imageid_seq; + CREATE TABLE images ( - id serial NOT NULL PRIMARY KEY, + id integer DEFAULT nextval('imageid_seq') NOT NULL PRIMARY KEY, vhost character varying NOT NULL, event character varying NOT NULL, filename character varying NOT NULL, @@ -29,6 +32,8 @@ CREATE TABLE images ( "date" timestamp without time zone, takenby character varying NOT NULL, selected boolean DEFAULT false, + model character varying, + lens character varying, FOREIGN KEY (vhost,event) REFERENCES events (vhost,event) ); @@ -44,33 +49,19 @@ CREATE TABLE deleted_images ( uploadedby character varying, "date" timestamp without time zone, takenby character varying NOT NULL, - selected boolean -); - -CREATE TABLE fake_files ( - vhost character varying NOT NULL, - event character varying NOT NULL, - filename character varying NOT NULL, - expires_at timestamp without time zone NOT NULL, - - PRIMARY KEY ( vhost, event, filename ), - FOREIGN KEY (vhost,event) REFERENCES events (vhost,event) -); - -CREATE TABLE shadow_files ( - vhost character varying NOT NULL, - event character varying NOT NULL, - filename character varying NOT NULL, - id integer NOT NULL, - expires_at timestamp without time zone NOT NULL + selected boolean, + model character varying, + lens character varying ); CREATE TABLE users ( username character varying NOT NULL, - sha1password character(28) NOT NULL, - vhost character varying NOT NULL + vhost character varying NOT NULL, + cryptpassword character varying NOT NULL ); +-- Mainly used for manual queries -- usually too slow to be very useful +-- for web views in the long run. CREATE TABLE exif_info ( image integer NOT NULL REFERENCES images (id) ON DELETE CASCADE, key varchar NOT NULL, @@ -82,21 +73,10 @@ CREATE TABLE exif_info ( CREATE INDEX exif_info_key ON exif_info ( key ); CLUSTER exif_info_key ON exif_info; -CREATE TABLE tags ( - image integer NOT NULL REFERENCES images (id) ON DELETE CASCADE, - tag varchar NOT NULL, - - PRIMARY KEY ( image, tag ) -); -CREATE INDEX tags_tag ON tags ( tag ); - GRANT INSERT ON TABLE deleted_images TO pr0n; GRANT INSERT,SELECT,UPDATE,DELETE ON TABLE events TO pr0n; -GRANT INSERT,SELECT,UPDATE,DELETE ON TABLE fake_files TO pr0n; -GRANT SELECT,UPDATE ON TABLE images_id_seq TO pr0n; +GRANT SELECT,UPDATE ON TABLE imageid_seq TO pr0n; GRANT INSERT,SELECT,UPDATE,DELETE ON TABLE images TO pr0n; -GRANT INSERT,SELECT,UPDATE,DELETE ON TABLE shadow_files TO pr0n; -GRANT SELECT ON TABLE users TO pr0n; +GRANT SELECT,UPDATE ON TABLE users TO pr0n; GRANT SELECT,INSERT,DELETE ON TABLE exif_info TO pr0n; -GRANT SELECT,INSERT,DELETE ON TABLE tags TO pr0n; GRANT INSERT,SELECT,UPDATE,DELETE ON TABLE last_picture_cache TO pr0n;