337 lines
9.9 KiB
SQL
337 lines
9.9 KiB
SQL
------------------------------------------------------------------------------------
|
|
-- Channel service DB SQL file for PostgreSQL.
|
|
--
|
|
-- .. if you wonder why some tables have moved and you have them here when
|
|
-- you set up your dbs, then you may need to have a look in the script 'movetables'
|
|
-- after you modified the parameters in it to fit your configuration, run it to
|
|
-- properly move your tables from the 'local' db to the 'remote' db.
|
|
-- If you use a single db for both cservice*.sql and local_db.sql then just dont run anything.
|
|
--
|
|
-- nighty <nighty@undernet.org>
|
|
|
|
CREATE TABLE custom_cookies (
|
|
user_id integer,
|
|
session_time integer
|
|
);
|
|
|
|
CREATE TABLE exclusions (
|
|
excluded character varying(40) DEFAULT '0.0.0.0'::character varying NOT NULL
|
|
);
|
|
|
|
CREATE TABLE gfxcodes (
|
|
code character varying(25) NOT NULL,
|
|
crc character varying(128) NOT NULL,
|
|
expire integer NOT NULL
|
|
);
|
|
|
|
CREATE TABLE ip_restrict (
|
|
id integer NOT NULL,
|
|
user_id integer NOT NULL,
|
|
allowmask character varying(255) NOT NULL,
|
|
allowrange1 integer NOT NULL,
|
|
allowrange2 integer NOT NULL,
|
|
added integer NOT NULL,
|
|
added_by integer NOT NULL,
|
|
type integer NOT NULL
|
|
);
|
|
|
|
CREATE SEQUENCE ip_restrict_id_seq
|
|
START WITH 1
|
|
INCREMENT BY 1
|
|
NO MINVALUE
|
|
NO MAXVALUE
|
|
CACHE 1;
|
|
|
|
|
|
CREATE TABLE ips (
|
|
ipnum character varying(255) DEFAULT '0.0.0.0'::character varying NOT NULL,
|
|
user_name character varying(20) NOT NULL,
|
|
expiration integer NOT NULL,
|
|
hit_counts integer,
|
|
set_on integer NOT NULL
|
|
);
|
|
|
|
CREATE TABLE logmsg (
|
|
ts integer,
|
|
name character varying(128),
|
|
event integer,
|
|
message text
|
|
);
|
|
|
|
CREATE TABLE newu_ipcheck (
|
|
ts integer NOT NULL,
|
|
ip inet NOT NULL,
|
|
expiration integer NOT NULL
|
|
);
|
|
|
|
CREATE SEQUENCE nickserv_id_seq
|
|
START WITH 1
|
|
INCREMENT BY 1
|
|
NO MINVALUE
|
|
NO MAXVALUE
|
|
CACHE 1;
|
|
|
|
CREATE TABLE themes (
|
|
id integer DEFAULT nextval(('"themes_id_seq"'::text)::regclass) NOT NULL,
|
|
name character varying(50) NOT NULL,
|
|
tstart character varying(5) DEFAULT '01/01'::character varying NOT NULL,
|
|
tend character varying(5) DEFAULT '12/31'::character varying NOT NULL,
|
|
created_ts integer NOT NULL,
|
|
created_by integer DEFAULT 0 NOT NULL,
|
|
sub_dir character varying(128) NOT NULL,
|
|
left_bgcolor character varying(6) NOT NULL,
|
|
left_bgimage character varying(255) DEFAULT ''::character varying NOT NULL,
|
|
left_textcolor character varying(6) NOT NULL,
|
|
left_linkcolor character varying(6) NOT NULL,
|
|
left_linkover character varying(6) NOT NULL,
|
|
left_loadavg0 character varying(6) NOT NULL,
|
|
left_loadavg1 character varying(6) NOT NULL,
|
|
left_loadavg2 character varying(6) NOT NULL,
|
|
top_bgcolor character varying(6) NOT NULL,
|
|
top_bgimage character varying(255) DEFAULT ''::character varying NOT NULL,
|
|
top_logo character varying(255) NOT NULL,
|
|
bottom_bgcolor character varying(6) NOT NULL,
|
|
bottom_bgimage character varying(255) DEFAULT ''::character varying NOT NULL,
|
|
bottom_textcolor character varying(6) NOT NULL,
|
|
bottom_linkcolor character varying(6) NOT NULL,
|
|
bottom_linkover character varying(6) NOT NULL,
|
|
main_bgcolor character varying(6) NOT NULL,
|
|
main_bgimage character varying(255) DEFAULT ''::character varying NOT NULL,
|
|
main_textcolor character varying(6) NOT NULL,
|
|
main_textlight character varying(6) NOT NULL,
|
|
main_linkcolor character varying(6) NOT NULL,
|
|
main_linkover character varying(6) NOT NULL,
|
|
main_warnmsg character varying(6) NOT NULL,
|
|
main_no character varying(6) NOT NULL,
|
|
main_yes character varying(6) NOT NULL,
|
|
main_appst0 character varying(6) NOT NULL,
|
|
main_appst1 character varying(6) NOT NULL,
|
|
main_appst2 character varying(6) NOT NULL,
|
|
main_appst3 character varying(6) NOT NULL,
|
|
main_appst4 character varying(6) NOT NULL,
|
|
main_appst8 character varying(6) NOT NULL,
|
|
main_appst9 character varying(6) NOT NULL,
|
|
main_vlinkcolor character varying(6) NOT NULL,
|
|
main_support character varying(6) NOT NULL,
|
|
main_nonsupport character varying(6) NOT NULL,
|
|
main_notyet character varying(6) NOT NULL,
|
|
main_frauduser character varying(6) NOT NULL,
|
|
main_xat_revert character varying(6) NOT NULL,
|
|
main_xat_goperm character varying(6) NOT NULL,
|
|
main_xat_deny character varying(6) NOT NULL,
|
|
main_xat_accept character varying(6) NOT NULL,
|
|
main_acl_create character varying(6) NOT NULL,
|
|
main_acl_edit character varying(6) NOT NULL,
|
|
table_bgcolor character varying(6) NOT NULL,
|
|
table_bgimage character varying(255) DEFAULT ''::character varying NOT NULL,
|
|
table_headcolor character varying(6) NOT NULL,
|
|
table_headtextcolor character varying(6) NOT NULL,
|
|
table_sepcolor character varying(6) NOT NULL,
|
|
table_septextcolor character varying(6) NOT NULL,
|
|
table_tr_enlighten character varying(6) NOT NULL,
|
|
table_tr_enlighten2 character varying(6) NOT NULL,
|
|
table_tr_enlighten3 character varying(6) NOT NULL,
|
|
table_headimage character varying(255) DEFAULT ''::character varying NOT NULL
|
|
);
|
|
|
|
|
|
CREATE SEQUENCE themes_id_seq
|
|
START WITH 1
|
|
INCREMENT BY 1
|
|
NO MINVALUE
|
|
NO MAXVALUE
|
|
CACHE 1;
|
|
|
|
CREATE TABLE totp_ips (
|
|
ipnum character varying(255),
|
|
user_name character varying(20),
|
|
expiration integer,
|
|
hit_counts integer,
|
|
set_on integer
|
|
);
|
|
|
|
CREATE TABLE types (
|
|
id integer DEFAULT nextval(('types_id_seq'::text)::regclass) NOT NULL,
|
|
label character varying(128) NOT NULL
|
|
);
|
|
|
|
CREATE SEQUENCE types_id_seq
|
|
START WITH 1
|
|
INCREMENT BY 1
|
|
NO MINVALUE
|
|
MAXVALUE 2147483647
|
|
CACHE 1;
|
|
|
|
CREATE TABLE userlogmsg (
|
|
ts integer,
|
|
name character varying(128),
|
|
event integer,
|
|
message text,
|
|
last_updated integer
|
|
);
|
|
|
|
CREATE TABLE users (
|
|
id integer DEFAULT nextval(('users_id_seq'::text)::regclass) NOT NULL,
|
|
username character varying(20) NOT NULL,
|
|
real_name character varying(128) DEFAULT ''::character varying NOT NULL,
|
|
url character varying(255) DEFAULT ''::character varying NOT NULL,
|
|
type integer DEFAULT 7 NOT NULL,
|
|
picture character varying(50) DEFAULT 'undernet.jpg'::character varying NOT NULL,
|
|
uniqid character varying(50) NOT NULL,
|
|
location character varying(128),
|
|
is_alumni integer
|
|
);
|
|
|
|
CREATE SEQUENCE users_id_seq
|
|
START WITH 1
|
|
INCREMENT BY 1
|
|
NO MINVALUE
|
|
MAXVALUE 2147483647
|
|
CACHE 1;
|
|
|
|
CREATE TABLE webcookies (
|
|
user_id integer,
|
|
cookie character varying(32),
|
|
expire integer,
|
|
tz_setting character varying(255) DEFAULT ''::character varying,
|
|
is_admin smallint DEFAULT 0,
|
|
totp_cookie character varying(40)
|
|
);
|
|
|
|
|
|
ALTER TABLE ONLY ip_restrict ALTER COLUMN id SET DEFAULT nextval('ip_restrict_id_seq'::regclass);
|
|
ALTER TABLE ONLY exclusions
|
|
ADD CONSTRAINT exclusions_pkey PRIMARY KEY (excluded);
|
|
ALTER TABLE ONLY ips
|
|
ADD CONSTRAINT ips_pkey PRIMARY KEY (expiration, ipnum, user_name);
|
|
ALTER TABLE ONLY newu_ipcheck
|
|
ADD CONSTRAINT newu_ipcheck_pkeys PRIMARY KEY (ip);
|
|
ALTER TABLE ONLY custom_cookies
|
|
ADD CONSTRAINT one_user UNIQUE (user_id);
|
|
ALTER TABLE ONLY themes
|
|
ADD CONSTRAINT themes_pkey PRIMARY KEY (name);
|
|
ALTER TABLE ONLY types
|
|
ADD CONSTRAINT types_pkey PRIMARY KEY (id);
|
|
ALTER TABLE ONLY users
|
|
ADD CONSTRAINT users_pkey PRIMARY KEY (id);
|
|
|
|
CREATE INDEX exclusions_excluded_key ON exclusions USING btree (excluded);
|
|
CREATE INDEX gfxcodes_code_idx ON gfxcodes USING btree (code);
|
|
CREATE INDEX gfxcodes_crc_idx ON gfxcodes USING btree (crc);
|
|
CREATE INDEX gfxcodes_exp_idx ON gfxcodes USING btree (expire);
|
|
CREATE INDEX hit_counts_ips_key ON ips USING btree (hit_counts);
|
|
CREATE INDEX ip_restrict_idx ON ip_restrict USING btree (user_id, type);
|
|
CREATE INDEX ip_restrict_uidx ON ip_restrict USING btree (user_id);
|
|
CREATE INDEX ips_expiration_key ON ips USING btree (expiration);
|
|
CREATE INDEX ips_ipnum_key ON ips USING btree (ipnum);
|
|
CREATE INDEX ips_set_on_key ON ips USING btree (set_on);
|
|
CREATE INDEX ips_user_name_key ON ips USING btree (user_name);
|
|
CREATE INDEX logmsg_idx_name ON logmsg USING btree (name);
|
|
CREATE INDEX logmsg_idx_namevt ON logmsg USING btree (name, event);
|
|
CREATE INDEX newu_ipcheck_expiration ON newu_ipcheck USING btree (expiration);
|
|
CREATE INDEX newu_ipcheck_ip ON newu_ipcheck USING btree (ip);
|
|
CREATE INDEX newu_ipcheck_ts ON newu_ipcheck USING btree (ts);
|
|
CREATE UNIQUE INDEX themes_id_key ON themes USING btree (id);
|
|
CREATE INDEX types_id_key ON types USING btree (id);
|
|
CREATE INDEX ulogmsg_idx_name ON userlogmsg USING btree (name);
|
|
CREATE INDEX ulogmsg_idx_namevt ON userlogmsg USING btree (name, event);
|
|
CREATE INDEX users_id_key ON users USING btree (id);
|
|
CREATE INDEX users_type_key ON users USING btree (type);
|
|
CREATE INDEX webcook_ce_idx ON webcookies USING btree (cookie, expire);
|
|
CREATE INDEX webcook_cu_idx ON webcookies USING btree (cookie, user_id);
|
|
CREATE INDEX webcook_ia_idx ON webcookies USING btree (is_admin);
|
|
CREATE INDEX webcookies_cookie_idx ON webcookies USING btree (cookie);
|
|
CREATE UNIQUE INDEX webcookies_cookie_key ON webcookies USING btree (cookie);
|
|
CREATE INDEX webcookies_expire_idx ON webcookies USING btree (expire);
|
|
CREATE INDEX webcookies_user_id_idx ON webcookies USING btree (user_id);
|
|
|
|
ALTER TABLE ONLY users
|
|
ADD CONSTRAINT users_type_fkey FOREIGN KEY (type) REFERENCES types(id);
|
|
ALTER TABLE ONLY users
|
|
ADD CONSTRAINT users_type_fkey1 FOREIGN KEY (type) REFERENCES types(id);
|
|
|
|
INSERT INTO themes VALUES (
|
|
-- head
|
|
'1',
|
|
'default',
|
|
'01/01',
|
|
'12/31',
|
|
'31337',
|
|
'0',
|
|
|
|
'default',
|
|
|
|
-- left
|
|
'60659c',
|
|
'',
|
|
'000000',
|
|
'aaaaaa',
|
|
'ffffff',
|
|
|
|
'aaaaaa',
|
|
'000000',
|
|
'ffff00',
|
|
|
|
-- top
|
|
'60659c',
|
|
'',
|
|
'default_logo.jpg',
|
|
|
|
-- bottom (footer)
|
|
'60659c',
|
|
'',
|
|
'000000',
|
|
'aaaaaa',
|
|
'ffffff',
|
|
|
|
-- main
|
|
'aaafe4',
|
|
'',
|
|
'000000',
|
|
'505050',
|
|
'60659c',
|
|
'ff7700',
|
|
'ff0000',
|
|
|
|
'990000',
|
|
'009900',
|
|
|
|
-- main/regproc
|
|
'ffff00',
|
|
'0000ff',
|
|
'0000ff',
|
|
'00ff00',
|
|
'eeeeee',
|
|
|
|
'990099',
|
|
'ff0000',
|
|
|
|
'60659c',
|
|
|
|
'00ff00',
|
|
'ff0000',
|
|
'ffffff',
|
|
'ffeeff',
|
|
|
|
'00ffff',
|
|
'eeeeee',
|
|
'990000',
|
|
'007700',
|
|
|
|
'ddffdd',
|
|
'ffdddd',
|
|
|
|
-- tables
|
|
'ffffff',
|
|
'',
|
|
'60659c',
|
|
'ffffff',
|
|
'dddddd',
|
|
'4c4c4c',
|
|
'ffff00',
|
|
'777777',
|
|
'60659c',
|
|
''
|
|
|
|
);
|