From 3b29f5f9d5946deb5151ca3b206e9b065c7ee11c Mon Sep 17 00:00:00 2001 From: Flummi Date: Sun, 30 Jun 2024 13:41:09 +0200 Subject: [PATCH] . --- f0ck.sql | 611 ++++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 538 insertions(+), 73 deletions(-) diff --git a/f0ck.sql b/f0ck.sql index 819d60f..0c0c5c1 100644 --- a/f0ck.sql +++ b/f0ck.sql @@ -1,4 +1,9 @@ -\connect "f0ck"; +-- +-- PostgreSQL database dump +-- + +-- Dumped from database version 16.2 +-- Dumped by pg_dump version 16.2 SET statement_timeout = 0; SET lock_timeout = 0; @@ -11,7 +16,33 @@ SET xmloption = content; SET client_min_messages = warning; SET row_security = off; -CREATE EXTENSION unaccent; +-- +-- Name: public; Type: SCHEMA; Schema: -; Owner: postgres +-- + +-- *not* creating schema, since initdb creates it + + +ALTER SCHEMA public OWNER TO postgres; + +-- +-- Name: unaccent; Type: EXTENSION; Schema: -; Owner: - +-- + +CREATE EXTENSION IF NOT EXISTS unaccent WITH SCHEMA public; + + +-- +-- Name: EXTENSION unaccent; Type: COMMENT; Schema: -; Owner: +-- + +COMMENT ON EXTENSION unaccent IS 'text search dictionary that removes accents'; + + +-- +-- Name: delete_unused_tags(); Type: FUNCTION; Schema: public; Owner: f0ck +-- + CREATE FUNCTION public.delete_unused_tags() RETURNS trigger LANGUAGE plpgsql AS $$ @@ -21,14 +52,17 @@ begin tags.id not in (select tag_id from tags_assign) and tags.id = OLD.tag_id and tags.tag != 'sfw' and - tags.tag != 'nsfw' and - tags.tag != 'hentai' and - tags.tag != 'audio'; + tags.tag != 'nsfw'; return OLD; end $$; + ALTER FUNCTION public.delete_unused_tags() OWNER TO f0ck; +-- +-- Name: fill_normalized(); Type: FUNCTION; Schema: public; Owner: f0ck +-- + CREATE FUNCTION public.fill_normalized() RETURNS trigger LANGUAGE plpgsql AS $$ @@ -37,8 +71,13 @@ begin return NEW; end$$; + ALTER FUNCTION public.fill_normalized() OWNER TO f0ck; +-- +-- Name: slugify(text); Type: FUNCTION; Schema: public; Owner: f0ck +-- + CREATE FUNCTION public.slugify(v text) RETURNS text LANGUAGE plpgsql AS $$ @@ -47,15 +86,47 @@ BEGIN END; $$; + ALTER FUNCTION public.slugify(v text) OWNER TO f0ck; +-- +-- Name: unaccent_text(text); Type: FUNCTION; Schema: public; Owner: f0ck +-- + +CREATE FUNCTION public.unaccent_text(text) RETURNS text + LANGUAGE sql IMMUTABLE COST 1 + AS $_$ + -- unaccent is STABLE, but the indexes must use IMMUTABLE functions. + -- comment this line out when calling pg_dump. + SELECT unaccent($1); + + -- Uncomment this line when calling pg_dump. + --SELECT ''::text; +$_$; + + +ALTER FUNCTION public.unaccent_text(text) OWNER TO f0ck; + +SET default_tablespace = ''; + +SET default_table_access_method = heap; + +-- +-- Name: favorites; Type: TABLE; Schema: public; Owner: f0ck +-- + CREATE TABLE public.favorites ( user_id integer NOT NULL, item_id integer NOT NULL ); + ALTER TABLE public.favorites OWNER TO f0ck; +-- +-- Name: items_id_seq; Type: SEQUENCE; Schema: public; Owner: f0ck +-- + CREATE SEQUENCE public.items_id_seq START WITH 1 INCREMENT BY 1 @@ -63,7 +134,12 @@ CREATE SEQUENCE public.items_id_seq NO MAXVALUE CACHE 1; -ALTER TABLE public.items_id_seq OWNER TO f0ck; + +ALTER SEQUENCE public.items_id_seq OWNER TO f0ck; + +-- +-- Name: items; Type: TABLE; Schema: public; Owner: f0ck +-- CREATE TABLE public.items ( id integer DEFAULT nextval('public.items_id_seq'::regclass) NOT NULL, @@ -73,18 +149,115 @@ CREATE TABLE public.items ( size integer NOT NULL, checksum character varying(255) NOT NULL, username character varying(40) NOT NULL, - userchannel character varying(100) NOT NULL, + userchannel character varying(255) NOT NULL, usernetwork character varying(40) NOT NULL, stamp integer NOT NULL, active boolean NOT NULL, thumb character varying(100) ); + ALTER TABLE public.items OWNER TO f0ck; +-- +-- Name: COLUMN items.src; Type: COMMENT; Schema: public; Owner: f0ck +-- + COMMENT ON COLUMN public.items.src IS 'src-Link'; + + +-- +-- Name: COLUMN items.dest; Type: COMMENT; Schema: public; Owner: f0ck +-- + COMMENT ON COLUMN public.items.dest IS 'filename'; + +-- +-- Name: items_li; Type: VIEW; Schema: public; Owner: f0ck +-- + +CREATE VIEW public.items_li AS +SELECT + NULL::integer AS id, + NULL::character varying(255) AS src, + NULL::character varying(40) AS dest, + NULL::character varying(100) AS mime, + NULL::integer AS size, + NULL::character varying(255) AS checksum, + NULL::character varying(40) AS username, + NULL::character varying(255) AS userchannel, + NULL::character varying(40) AS usernetwork, + NULL::integer AS stamp; + + +ALTER VIEW public.items_li OWNER TO f0ck; + +-- +-- Name: tags_assign; Type: TABLE; Schema: public; Owner: f0ck +-- + +CREATE TABLE public.tags_assign ( + item_id integer NOT NULL, + tag_id integer NOT NULL, + user_id integer DEFAULT 10 NOT NULL +); + + +ALTER TABLE public.tags_assign OWNER TO f0ck; + +-- +-- Name: tags_nsfp; Type: TABLE; Schema: public; Owner: f0ck +-- + +CREATE TABLE public.tags_nsfp ( + id integer NOT NULL +); + + +ALTER TABLE public.tags_nsfp OWNER TO f0ck; + +-- +-- Name: items_sfw; Type: VIEW; Schema: public; Owner: f0ck +-- + +CREATE VIEW public.items_sfw AS + SELECT ( SELECT + CASE + WHEN (tags_assign.tag_id > 0) THEN tags_assign.tag_id + ELSE 0 + END AS "case" + FROM public.tags_assign + WHERE ((tags_assign.tag_id = ANY (ARRAY[1, 2])) AND (tags_assign.item_id = items.id))) AS sfw, + ( SELECT + CASE + WHEN (tags_assign.tag_id > 0) THEN 1 + ELSE 0 + END AS "case" + FROM public.tags_assign + WHERE ((tags_assign.tag_id IN ( SELECT tags_nsfp.id + FROM public.tags_nsfp)) AND (tags_assign.item_id = items.id)) + LIMIT 1) AS nsfp, + id, + src, + dest, + mime, + size, + checksum, + username, + userchannel, + usernetwork, + stamp, + active + FROM public.items; + + +ALTER VIEW public.items_sfw OWNER TO f0ck; + +-- +-- Name: tags_id_seq; Type: SEQUENCE; Schema: public; Owner: f0ck +-- + CREATE SEQUENCE public.tags_id_seq START WITH 1 INCREMENT BY 1 @@ -92,30 +265,25 @@ CREATE SEQUENCE public.tags_id_seq NO MAXVALUE CACHE 1; -ALTER TABLE public.tags_id_seq OWNER TO f0ck; + +ALTER SEQUENCE public.tags_id_seq OWNER TO f0ck; + +-- +-- Name: tags; Type: TABLE; Schema: public; Owner: f0ck +-- CREATE TABLE public.tags ( id integer DEFAULT nextval('public.tags_id_seq'::regclass) NOT NULL, - tag character varying(45) NOT NULL, - normalized character varying(45) NOT NULL + tag character varying(70) NOT NULL, + normalized character varying(70) NOT NULL ); + ALTER TABLE public.tags OWNER TO f0ck; -CREATE TABLE public.tags_alias ( - tag_orig_id integer NOT NULL, - tag_alias character varying NOT NULL -); - -ALTER TABLE public.tags_alias OWNER TO f0ck; - -CREATE TABLE public.tags_assign ( - item_id integer NOT NULL, - tag_id integer NOT NULL, - user_id integer DEFAULT 2 NOT NULL -); - -ALTER TABLE public.tags_assign OWNER TO f0ck; +-- +-- Name: user_id_seq; Type: SEQUENCE; Schema: public; Owner: f0ck +-- CREATE SEQUENCE public.user_id_seq START WITH 1 @@ -124,31 +292,128 @@ CREATE SEQUENCE public.user_id_seq NO MAXVALUE CACHE 1; -ALTER TABLE public.user_id_seq OWNER TO f0ck; + +ALTER SEQUENCE public.user_id_seq OWNER TO f0ck; + +-- +-- Name: user; Type: TABLE; Schema: public; Owner: f0ck +-- CREATE TABLE public."user" ( id integer DEFAULT nextval('public.user_id_seq'::regclass) NOT NULL, login character varying(255) NOT NULL, "user" character varying(255) NOT NULL, password character varying(167) NOT NULL, - admin boolean NOT NULL + admin boolean NOT NULL, + created_at timestamp without time zone DEFAULT now() NOT NULL ); + ALTER TABLE public."user" OWNER TO f0ck; +-- +-- Name: items_tags; Type: VIEW; Schema: public; Owner: f0ck +-- + +CREATE VIEW public.items_tags AS + SELECT ( SELECT + CASE + WHEN (tags_assign.tag_id > 0) THEN tags_assign.tag_id + ELSE 0 + END AS "case" + FROM public.tags_assign + WHERE ((tags_assign.tag_id = ANY (ARRAY[1, 2])) AND (tags_assign.item_id = items.id))) AS sfw, + ( SELECT + CASE + WHEN (tags_assign.tag_id > 0) THEN 1 + ELSE 0 + END AS "case" + FROM public.tags_assign + WHERE ((tags_assign.tag_id IN ( SELECT tags_nsfp.id + FROM public.tags_nsfp)) AND (tags_assign.item_id = items.id)) + LIMIT 1) AS nsfp, + ( SELECT jsonb_agg(jsonb_build_object('id', tags.id, 'normalized', tags.normalized)) AS jsonb_agg + FROM (public.tags_assign + LEFT JOIN public.tags ON ((tags.id = tags_assign.tag_id))) + WHERE (tags_assign.item_id = items.id)) AS tags, + ( SELECT jsonb_agg(jsonb_build_object('id', favorites.user_id, 'user', "user"."user")) AS jsonb_agg + FROM (public.favorites + LEFT JOIN public."user" ON (("user".id = favorites.user_id))) + WHERE (favorites.item_id = items.id)) AS favs, + id, + src, + dest, + mime, + size, + checksum, + username, + userchannel, + usernetwork, + stamp, + active + FROM public.items; + + +ALTER VIEW public.items_tags OWNER TO f0ck; + +-- +-- Name: tags_alias; Type: TABLE; Schema: public; Owner: f0ck +-- + +CREATE TABLE public.tags_alias ( + tag_orig_id integer NOT NULL, + tag_alias character varying NOT NULL +); + + +ALTER TABLE public.tags_alias OWNER TO f0ck; + +-- +-- Name: user_alias; Type: TABLE; Schema: public; Owner: f0ck +-- + +CREATE TABLE public.user_alias ( + userid integer NOT NULL, + alias character varying(255) NOT NULL +); + +ALTER TABLE ONLY public.user_alias REPLICA IDENTITY FULL; + + +ALTER TABLE public.user_alias OWNER TO f0ck; + +-- +-- Name: user_options; Type: TABLE; Schema: public; Owner: f0ck +-- + CREATE TABLE public.user_options ( user_id integer NOT NULL, mode integer NOT NULL, theme character varying(50) NOT NULL, - avatar integer DEFAULT 1 NOT NULL, - fullscreen integer DEFAULT 0 NOT NULL + avatar integer DEFAULT 56660 NOT NULL, + fullscreen smallint DEFAULT '0'::smallint NOT NULL ); + ALTER TABLE public.user_options OWNER TO f0ck; -CREATE SEQUENCE public.user_sessions_id_seq START WITH 1 INCREMENT BY 1 NO MINVALUE NO MAXVALUE CACHE 1; +-- +-- Name: user_sessions_id_seq; Type: SEQUENCE; Schema: public; Owner: f0ck +-- -ALTER TABLE public.user_sessions_id_seq OWNER TO f0ck; +CREATE SEQUENCE public.user_sessions_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +ALTER SEQUENCE public.user_sessions_id_seq OWNER TO f0ck; + +-- +-- Name: user_sessions; Type: TABLE; Schema: public; Owner: f0ck +-- CREATE TABLE public.user_sessions ( id integer DEFAULT nextval('public.user_sessions_id_seq'::regclass) NOT NULL, @@ -161,55 +426,255 @@ CREATE TABLE public.user_sessions ( kmsi smallint DEFAULT '0'::smallint NOT NULL ); + ALTER TABLE public.user_sessions OWNER TO f0ck; -COPY public.items (id, src, dest, mime, size, checksum, username, userchannel, usernetwork, stamp, active, thumb) FROM stdin; -1 b761fa9339.png b761fa9339.png image/png 164 keinPlan Flummi #f0ck n0xy 1471250800 t -\. +-- +-- Name: favorites idx_16521_primary; Type: CONSTRAINT; Schema: public; Owner: f0ck +-- -COPY public.tags (id, tag, normalized) FROM stdin; -1 sfw sfw -2 nsfw nsfw -3 audio audio -4 hentai hentai -\. +ALTER TABLE ONLY public.favorites + ADD CONSTRAINT idx_16521_primary PRIMARY KEY (user_id, item_id); -COPY public.tags_assign (item_id, tag_id, user_id) FROM stdin; -1 1 1 -\. -COPY public."user" (id, login, "user", password, level) FROM stdin; -1 autotagger autotagger f0ck you 0 -2 deleted deleted f0ck you 0 -\. +-- +-- Name: items idx_16526_primary; Type: CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.items + ADD CONSTRAINT idx_16526_primary PRIMARY KEY (id); + + +-- +-- Name: user idx_16554_primary; Type: CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public."user" + ADD CONSTRAINT idx_16554_primary PRIMARY KEY (id); + + +-- +-- Name: user_options idx_16567_user_id; Type: CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.user_options + ADD CONSTRAINT idx_16567_user_id UNIQUE (user_id); + + +-- +-- Name: user_sessions idx_16572_primary; Type: CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.user_sessions + ADD CONSTRAINT idx_16572_primary PRIMARY KEY (id); + + +-- +-- Name: items items_checksum; Type: CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.items + ADD CONSTRAINT items_checksum UNIQUE (checksum); + + +-- +-- Name: tags_alias tags_alias_tag_alias_tag_orig_id; Type: CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.tags_alias + ADD CONSTRAINT tags_alias_tag_alias_tag_orig_id UNIQUE (tag_alias, tag_orig_id); + + +-- +-- Name: tags_alias tags_alias_tag_orig_id; Type: CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.tags_alias + ADD CONSTRAINT tags_alias_tag_orig_id PRIMARY KEY (tag_orig_id); + + +-- +-- Name: tags_assign tags_assign_item_id_tag_id_primary; Type: CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.tags_assign + ADD CONSTRAINT tags_assign_item_id_tag_id_primary PRIMARY KEY (item_id, tag_id); + + +-- +-- Name: tags_assign tags_assign_item_id_tag_id_unique; Type: CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.tags_assign + ADD CONSTRAINT tags_assign_item_id_tag_id_unique UNIQUE (item_id, tag_id); + + +-- +-- Name: tags tags_id; Type: CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.tags + ADD CONSTRAINT tags_id PRIMARY KEY (id); + + +-- +-- Name: tags tags_normalized; Type: CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.tags + ADD CONSTRAINT tags_normalized UNIQUE (normalized); + + +-- +-- Name: tags tags_tag; Type: CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.tags + ADD CONSTRAINT tags_tag UNIQUE (tag); + + +-- +-- Name: user_options user_options_user_id; Type: CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.user_options + ADD CONSTRAINT user_options_user_id PRIMARY KEY (user_id); + + +-- +-- Name: items_li _RETURN; Type: RULE; Schema: public; Owner: f0ck +-- + +CREATE OR REPLACE VIEW public.items_li AS + SELECT items.id, + items.src, + items.dest, + items.mime, + items.size, + items.checksum, + items.username, + items.userchannel, + items.usernetwork, + items.stamp + FROM ((public.items + JOIN public.tags_assign ta1 ON (((ta1.tag_id = 1) AND (ta1.item_id = items.id)))) + JOIN public.tags_assign ta2 ON (((NOT (ta2.tag_id IN ( SELECT tags_nsfp.id + FROM public.tags_nsfp))) AND (ta2.item_id = items.id)))) + WHERE items.active + GROUP BY items.id; + + +-- +-- Name: tags_assign tags_assign_ad; Type: TRIGGER; Schema: public; Owner: f0ck +-- -SELECT pg_catalog.setval('public.items_id_seq', 2, true); -SELECT pg_catalog.setval('public.tags_id_seq', 5, true); -SELECT pg_catalog.setval('public.user_id_seq', 3, true); -SELECT pg_catalog.setval('public.user_sessions_id_seq', 1, true); -ALTER TABLE ONLY public.favorites ADD CONSTRAINT idx_16521_primary PRIMARY KEY (user_id, item_id); -ALTER TABLE ONLY public.items ADD CONSTRAINT idx_16526_primary PRIMARY KEY (id); -ALTER TABLE ONLY public."user" ADD CONSTRAINT idx_16554_primary PRIMARY KEY (id); -ALTER TABLE ONLY public.user_options ADD CONSTRAINT idx_16567_user_id UNIQUE (user_id); -ALTER TABLE ONLY public.user_sessions ADD CONSTRAINT idx_16572_primary PRIMARY KEY (id); -ALTER TABLE ONLY public.items ADD CONSTRAINT items_checksum UNIQUE (checksum); -ALTER TABLE ONLY public.tags_alias ADD CONSTRAINT tags_alias_tag_alias_tag_orig_id UNIQUE (tag_alias, tag_orig_id); -ALTER TABLE ONLY public.tags_alias ADD CONSTRAINT tags_alias_tag_orig_id PRIMARY KEY (tag_orig_id); -ALTER TABLE ONLY public.tags_assign ADD CONSTRAINT tags_assign_item_id_tag_id_primary PRIMARY KEY (item_id, tag_id); -ALTER TABLE ONLY public.tags_assign ADD CONSTRAINT tags_assign_item_id_tag_id_unique UNIQUE (item_id, tag_id); -ALTER TABLE ONLY public.tags ADD CONSTRAINT tags_id PRIMARY KEY (id); -ALTER TABLE ONLY public.tags ADD CONSTRAINT tags_normalized UNIQUE (normalized); -ALTER TABLE ONLY public.tags ADD CONSTRAINT tags_tag UNIQUE (tag); -ALTER TABLE ONLY public.user_options ADD CONSTRAINT user_options_user_id PRIMARY KEY (user_id); CREATE TRIGGER tags_assign_ad AFTER DELETE ON public.tags_assign FOR EACH ROW EXECUTE FUNCTION public.delete_unused_tags(); + + +-- +-- Name: tags tags_bi; Type: TRIGGER; Schema: public; Owner: f0ck +-- + CREATE TRIGGER tags_bi BEFORE INSERT ON public.tags FOR EACH ROW EXECUTE FUNCTION public.fill_normalized(); + + +-- +-- Name: tags tags_bu; Type: TRIGGER; Schema: public; Owner: f0ck +-- + CREATE TRIGGER tags_bu BEFORE UPDATE ON public.tags FOR EACH ROW EXECUTE FUNCTION public.fill_normalized(); -ALTER TABLE ONLY public.favorites ADD CONSTRAINT favorites_item_id_fkey FOREIGN KEY (item_id) REFERENCES public.items(id) ON DELETE CASCADE; -ALTER TABLE ONLY public.favorites ADD CONSTRAINT favorites_user_id_fkey FOREIGN KEY (user_id) REFERENCES public."user"(id) ON DELETE CASCADE; -ALTER TABLE ONLY public.tags_alias ADD CONSTRAINT tags_alias_tag_orig_id_fkey FOREIGN KEY (tag_orig_id) REFERENCES public.tags(id) ON DELETE CASCADE; -ALTER TABLE ONLY public.tags_assign ADD CONSTRAINT tags_assign_item_id_fkey FOREIGN KEY (item_id) REFERENCES public.items(id) ON DELETE CASCADE; -ALTER TABLE ONLY public.tags_assign ADD CONSTRAINT tags_assign_tag_id_fkey FOREIGN KEY (tag_id) REFERENCES public.tags(id) ON DELETE CASCADE; -ALTER TABLE ONLY public.tags_assign ADD CONSTRAINT tags_assign_user_id_fkey FOREIGN KEY (user_id) REFERENCES public."user"(id) ON DELETE SET DEFAULT; -ALTER TABLE ONLY public.user_options ADD CONSTRAINT user_options_avatar_fkey FOREIGN KEY (avatar) REFERENCES public.items(id) ON DELETE SET DEFAULT; -ALTER TABLE ONLY public.user_options ADD CONSTRAINT user_options_user_id_fkey FOREIGN KEY (user_id) REFERENCES public."user"(id) ON DELETE CASCADE; -ALTER TABLE ONLY public.user_sessions ADD CONSTRAINT user_sessions_user_id_fkey FOREIGN KEY (user_id) REFERENCES public."user"(id) ON DELETE CASCADE; + + +-- +-- Name: favorites favorites_item_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.favorites + ADD CONSTRAINT favorites_item_id_fkey FOREIGN KEY (item_id) REFERENCES public.items(id) ON DELETE CASCADE; + + +-- +-- Name: favorites favorites_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.favorites + ADD CONSTRAINT favorites_user_id_fkey FOREIGN KEY (user_id) REFERENCES public."user"(id) ON DELETE CASCADE; + + +-- +-- Name: tags_alias tags_alias_tag_orig_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.tags_alias + ADD CONSTRAINT tags_alias_tag_orig_id_fkey FOREIGN KEY (tag_orig_id) REFERENCES public.tags(id) ON DELETE CASCADE; + + +-- +-- Name: tags_assign tags_assign_item_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.tags_assign + ADD CONSTRAINT tags_assign_item_id_fkey FOREIGN KEY (item_id) REFERENCES public.items(id) ON DELETE CASCADE; + + +-- +-- Name: tags_assign tags_assign_tag_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.tags_assign + ADD CONSTRAINT tags_assign_tag_id_fkey FOREIGN KEY (tag_id) REFERENCES public.tags(id) ON DELETE CASCADE; + + +-- +-- Name: tags_assign tags_assign_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.tags_assign + ADD CONSTRAINT tags_assign_user_id_fkey FOREIGN KEY (user_id) REFERENCES public."user"(id) ON DELETE SET DEFAULT; + + +-- +-- Name: user_options user_options_avatar_fkey; Type: FK CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.user_options + ADD CONSTRAINT user_options_avatar_fkey FOREIGN KEY (avatar) REFERENCES public.items(id) ON DELETE SET DEFAULT; + + +-- +-- Name: user_options user_options_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.user_options + ADD CONSTRAINT user_options_user_id_fkey FOREIGN KEY (user_id) REFERENCES public."user"(id) ON DELETE CASCADE; + + +-- +-- Name: user_sessions user_sessions_user_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: f0ck +-- + +ALTER TABLE ONLY public.user_sessions + ADD CONSTRAINT user_sessions_user_id_fkey FOREIGN KEY (user_id) REFERENCES public."user"(id) ON DELETE CASCADE; + + +-- +-- Name: alltables; Type: PUBLICATION; Schema: -; Owner: postgres +-- + +CREATE PUBLICATION alltables FOR ALL TABLES WITH (publish = 'insert, update, delete, truncate'); + + +ALTER PUBLICATION alltables OWNER TO postgres; + +-- +-- Name: SCHEMA public; Type: ACL; Schema: -; Owner: postgres +-- + +REVOKE USAGE ON SCHEMA public FROM PUBLIC; +GRANT ALL ON SCHEMA public TO PUBLIC; + + +-- +-- PostgreSQL database dump complete +-- +