]> ruin.nu Git - ndwebbie.git/blob - database/ndawn.sql
Clean up database directory
[ndwebbie.git] / database / ndawn.sql
1 --
2 -- PostgreSQL database dump
3 --
4
5 -- Dumped from database version 9.5.1
6 -- Dumped by pg_dump version 9.5.1
7
8 SET statement_timeout = 0;
9 SET lock_timeout = 0;
10 SET client_encoding = 'UTF8';
11 SET standard_conforming_strings = on;
12 SET check_function_bodies = false;
13 SET client_min_messages = warning;
14 SET row_security = off;
15
16 --
17 -- Name: plpgsql; Type: EXTENSION; Schema: -; Owner: 
18 --
19
20 CREATE EXTENSION IF NOT EXISTS plpgsql WITH SCHEMA pg_catalog;
21
22
23 --
24 -- Name: EXTENSION plpgsql; Type: COMMENT; Schema: -; Owner: 
25 --
26
27 COMMENT ON EXTENSION plpgsql IS 'PL/pgSQL procedural language';
28
29
30 --
31 -- Name: citext; Type: EXTENSION; Schema: -; Owner: 
32 --
33
34 CREATE EXTENSION IF NOT EXISTS citext WITH SCHEMA public;
35
36
37 --
38 -- Name: EXTENSION citext; Type: COMMENT; Schema: -; Owner: 
39 --
40
41 COMMENT ON EXTENSION citext IS 'data type for case-insensitive character strings';
42
43
44 --
45 -- Name: pg_trgm; Type: EXTENSION; Schema: -; Owner: 
46 --
47
48 CREATE EXTENSION IF NOT EXISTS pg_trgm WITH SCHEMA public;
49
50
51 --
52 -- Name: EXTENSION pg_trgm; Type: COMMENT; Schema: -; Owner: 
53 --
54
55 COMMENT ON EXTENSION pg_trgm IS 'text similarity measurement and index searching based on trigrams';
56
57
58 SET search_path = public, pg_catalog;
59
60 --
61 -- Name: ead_status; Type: TYPE; Schema: public; Owner: ndawn
62 --
63
64 CREATE TYPE ead_status AS ENUM (
65     '',
66     'NAP',
67     'Friendly',
68     'Hostile'
69 );
70
71
72 ALTER TYPE ead_status OWNER TO ndawn;
73
74 --
75 -- Name: governments; Type: TYPE; Schema: public; Owner: ndawn
76 --
77
78 CREATE TYPE governments AS ENUM (
79     '',
80     'Feu',
81     'Dic',
82     'Dem',
83     'Uni'
84 );
85
86
87 ALTER TYPE governments OWNER TO ndawn;
88
89 --
90 -- Name: race; Type: TYPE; Schema: public; Owner: ndawn
91 --
92
93 CREATE TYPE race AS ENUM (
94     'Ter',
95     'Cat',
96     'Xan',
97     'Zik',
98     'Etd'
99 );
100
101
102 ALTER TYPE race OWNER TO ndawn;
103
104 --
105 -- Name: add_call(); Type: FUNCTION; Schema: public; Owner: ndawn
106 --
107
108 CREATE FUNCTION add_call() RETURNS trigger
109     LANGUAGE plpgsql
110     AS $$
111 DECLARE
112         thread INTEGER;
113 BEGIN
114         INSERT INTO forum_threads (fbid,subject,uid)
115                 VALUES(-3,NEW.uid || ': ' || NEW.landing_tick,-3) RETURNING ftid
116                 INTO STRICT thread;
117         NEW.ftid = thread;
118         RETURN NEW;
119 END;
120 $$;
121
122
123 ALTER FUNCTION public.add_call() OWNER TO ndawn;
124
125 --
126 -- Name: add_raid(); Type: FUNCTION; Schema: public; Owner: ndawn
127 --
128
129 CREATE FUNCTION add_raid() RETURNS trigger
130     LANGUAGE plpgsql
131     AS $$
132 DECLARE
133         rec RECORD;
134 BEGIN
135         INSERT INTO forum_threads (ftid,fbid,subject,uid) VALUES
136                 (DEFAULT,-5,'Raid ' || NEW.id,-3) RETURNING ftid INTO rec;
137         NEW.ftid := rec.ftid;
138         return NEW;
139 END;
140 $$;
141
142
143 ALTER FUNCTION public.add_raid() OWNER TO ndawn;
144
145 --
146 -- Name: add_user(); Type: FUNCTION; Schema: public; Owner: ndawn
147 --
148
149 CREATE FUNCTION add_user() RETURNS trigger
150     LANGUAGE plpgsql
151     AS $$
152 DECLARE
153         thread INTEGER;
154 BEGIN
155         INSERT INTO forum_threads (fbid,subject,uid)
156                 VALUES(-1,NEW.uid || ': ' || NEW.username,-3) RETURNING ftid
157                 INTO STRICT thread;
158         NEW.ftid = thread;
159         RETURN NEW;
160 END;
161 $$;
162
163
164 ALTER FUNCTION public.add_user() OWNER TO ndawn;
165
166 --
167 -- Name: change_member(); Type: FUNCTION; Schema: public; Owner: ndawn
168 --
169
170 CREATE FUNCTION change_member() RETURNS trigger
171     LANGUAGE plpgsql
172     AS $$
173 BEGIN
174         IF TG_OP = 'INSERT' THEN
175                 IF NEW.gid = 'M' THEN
176                         UPDATE planets SET alliance = 'NewDawn' WHERE
177                                 pid = (SELECT pid FROM users WHERE uid = NEW.uid);
178                 END IF;
179         ELSIF TG_OP = 'DELETE' THEN
180                 IF OLD.gid = 'M' THEN
181                         UPDATE planets SET alliance = NULL WHERE
182                                 pid = (SELECT pid FROM users WHERE uid = OLD.uid);
183                 END IF;
184         END IF;
185
186         return NEW;
187 END;
188 $$;
189
190
191 ALTER FUNCTION public.change_member() OWNER TO ndawn;
192
193 --
194 -- Name: coords(integer, integer, integer); Type: FUNCTION; Schema: public; Owner: ndawn
195 --
196
197 CREATE FUNCTION coords(x integer, y integer, z integer) RETURNS text
198     LANGUAGE sql IMMUTABLE
199     AS $_$
200 SELECT $1 || ':' || $2 || ':' || $3
201 $_$;
202
203
204 ALTER FUNCTION public.coords(x integer, y integer, z integer) OWNER TO ndawn;
205
206 --
207 -- Name: covop_alert(integer, integer, integer, integer, governments, integer); Type: FUNCTION; Schema: public; Owner: ndawn
208 --
209
210 CREATE FUNCTION covop_alert(secs integer, strucs integer, roids integer, guards integer, gov governments, population integer) RETURNS integer
211     LANGUAGE sql IMMUTABLE
212     AS $_$
213         SELECT ((50 + COALESCE($4*5.0/($3+1.0),$6))
214                 * (1.0+2*LEAST(COALESCE($1::float/CASE $2
215                         WHEN 0 THEN 1 ELSE $2 END,$6),0.30)
216                         + (CASE $5
217                                 WHEN 'Dic' THEN 0.20
218                                 WHEN 'Feu' THEN -0.20
219                                 WHEN 'Uni' THEN -0.10
220                                 ELSE 0
221                         END) + $6/100.0
222                 ))::integer;
223 $_$;
224
225
226 ALTER FUNCTION public.covop_alert(secs integer, strucs integer, roids integer, guards integer, gov governments, population integer) OWNER TO ndawn;
227
228 --
229 -- Name: endtick(); Type: FUNCTION; Schema: public; Owner: ndawn
230 --
231
232 CREATE FUNCTION endtick() RETURNS integer
233     LANGUAGE sql STABLE SECURITY DEFINER
234     AS $$SELECT value::integer FROM misc WHERE id = 'ENDTICK'$$;
235
236
237 ALTER FUNCTION public.endtick() OWNER TO ndawn;
238
239 --
240 -- Name: find_alliance_id(text); Type: FUNCTION; Schema: public; Owner: ndawn
241 --
242
243 CREATE FUNCTION find_alliance_id(alli text) RETURNS integer
244     LANGUAGE plpgsql
245     AS $_$
246 DECLARE
247         id INTEGER;
248 BEGIN
249         SELECT aid FROM INTO id alliances WHERE alliance = alli;
250         IF NOT FOUND THEN
251                 INSERT INTO alliances(alliance) VALUES($1)
252                         RETURNING aid INTO id;
253         END IF;
254         RETURN id;
255 END;
256 $_$;
257
258
259 ALTER FUNCTION public.find_alliance_id(alli text) OWNER TO ndawn;
260
261 --
262 -- Name: find_planet_id(text, text, race); Type: FUNCTION; Schema: public; Owner: ndawn
263 --
264
265 CREATE FUNCTION find_planet_id(_ruler text, _planet text, _race race) RETURNS integer
266     LANGUAGE plpgsql
267     AS $$
268 DECLARE
269         p RECORD;
270         id INTEGER;
271         thread INTEGER;
272 BEGIN
273         SELECT pid, race INTO p FROM planets WHERE ruler = _ruler AND planet = _planet;
274         IF FOUND THEN
275                 IF _race <> p.race THEN
276                         UPDATE planets SET race = _race WHERE pid = p.pid;
277                 END IF;
278                 id := p.pid;
279         ELSE
280                 INSERT INTO forum_threads (fbid,subject,uid) VALUES(-2, _ruler || ' OF ' || _planet, -3)
281                         RETURNING ftid INTO thread;
282                 INSERT INTO planets(ruler,planet,race,ftid) VALUES(_ruler,_planet,_race,thread)
283                         RETURNING pid INTO id;
284         END IF;
285         RETURN id;
286 END;
287 $$;
288
289
290 ALTER FUNCTION public.find_planet_id(_ruler text, _planet text, _race race) OWNER TO ndawn;
291
292 --
293 -- Name: groups(integer); Type: FUNCTION; Schema: public; Owner: ndawn
294 --
295
296 CREATE FUNCTION groups(uid integer) RETURNS SETOF character
297     LANGUAGE sql STABLE
298     AS $_$SELECT gid FROM groupmembers WHERE uid = $1 UNION SELECT ''$_$;
299
300
301 ALTER FUNCTION public.groups(uid integer) OWNER TO ndawn;
302
303 --
304 -- Name: max_bank_hack(bigint, bigint, bigint, integer, integer, integer); Type: FUNCTION; Schema: public; Owner: ndawn
305 --
306
307 CREATE FUNCTION max_bank_hack(metal bigint, crystal bigint, eonium bigint, tvalue integer, value integer, agents integer) RETURNS integer
308     LANGUAGE sql IMMUTABLE
309     AS $_$
310 SELECT LEAST(2000.0*$6*$4/$5, $1*0.10, $6*10000.0)::integer
311     + LEAST(2000.0*$6*$4/$5, $2*0.10, $6*10000.0)::integer
312     + LEAST(2000.0*$6*$4/$5, $3*0.10, $6*10000.0)::integer
313 $_$;
314
315
316 ALTER FUNCTION public.max_bank_hack(metal bigint, crystal bigint, eonium bigint, tvalue integer, value integer, agents integer) OWNER TO ndawn;
317
318 --
319 -- Name: mmdd(date); Type: FUNCTION; Schema: public; Owner: ndawn
320 --
321
322 CREATE FUNCTION mmdd(d date) RETURNS text
323     LANGUAGE sql IMMUTABLE
324     AS $_$ SELECT to_char($1,'MM-DD') $_$;
325
326
327 ALTER FUNCTION public.mmdd(d date) OWNER TO ndawn;
328
329 --
330 -- Name: old_claim(timestamp with time zone); Type: FUNCTION; Schema: public; Owner: ndawn
331 --
332
333 CREATE FUNCTION old_claim("timestamp" timestamp with time zone) RETURNS boolean
334     LANGUAGE sql IMMUTABLE
335     AS $_$SELECT NOW() - '10 minutes'::INTERVAL > $1;$_$;
336
337
338 ALTER FUNCTION public.old_claim("timestamp" timestamp with time zone) OWNER TO ndawn;
339
340 --
341 -- Name: planetcoords(integer, integer); Type: FUNCTION; Schema: public; Owner: ndawn
342 --
343
344 CREATE FUNCTION planetcoords(id integer, tick integer, OUT x integer, OUT y integer, OUT z integer) RETURNS record
345     LANGUAGE sql STABLE
346     AS $_$SELECT x,y,z FROM planet_stats WHERE pid = $1 AND (tick >= $2  OR tick =( SELECT max(tick) FROM planet_stats))  ORDER BY tick ASC LIMIT 1$_$;
347
348
349 ALTER FUNCTION public.planetcoords(id integer, tick integer, OUT x integer, OUT y integer, OUT z integer) OWNER TO ndawn;
350
351 --
352 -- Name: planetid(integer, integer, integer, integer); Type: FUNCTION; Schema: public; Owner: ndawn
353 --
354
355 CREATE FUNCTION planetid(x integer, y integer, z integer, tick integer) RETURNS integer
356     LANGUAGE sql STABLE
357     AS $_$SELECT pid FROM planet_stats WHERE x = $1 AND y = $2 AND z = $3 AND (tick >= $4  OR tick =( SELECT max(tick) FROM planet_stats)) ORDER BY tick ASC LIMIT 1$_$;
358
359
360 ALTER FUNCTION public.planetid(x integer, y integer, z integer, tick integer) OWNER TO ndawn;
361
362 --
363 -- Name: tick(); Type: FUNCTION; Schema: public; Owner: ndawn
364 --
365
366 CREATE FUNCTION tick() RETURNS integer
367     LANGUAGE sql STABLE SECURITY DEFINER
368     AS $$SELECT value::integer FROM misc WHERE id = 'TICK'$$;
369
370
371 ALTER FUNCTION public.tick() OWNER TO ndawn;
372
373 --
374 -- Name: unread_posts(integer); Type: FUNCTION; Schema: public; Owner: ndawn
375 --
376
377 CREATE FUNCTION unread_posts(uid integer, OUT unread integer, OUT new integer) RETURNS record
378     LANGUAGE sql STABLE
379     AS $_$
380 SELECT count(*)::int AS unread
381         ,count(NULLIF(fp.time > (SELECT max(time) FROM forum_thread_visits WHERE uid = $1),FALSE))::int AS new
382 FROM(
383         SELECT ftid, ftv.time
384         FROM forum_threads ft
385                 LEFT OUTER JOIN (SELECT * FROM forum_thread_visits WHERE uid = $1)
386                         ftv USING (ftid)
387         WHERE COALESCE(ft.mtime > ftv.time,TRUE)
388                 AND ((fbid > 0 AND
389                                 fbid IN (SELECT fbid FROM forum_access WHERE gid IN (SELECT groups($1)))
390                         ) OR ft.ftid IN (SELECT ftid FROM forum_priv_access WHERE uid = $1)
391                 )
392         ) ft
393         JOIN forum_posts fp USING (ftid)
394 WHERE COALESCE(fp.time > ft.time, TRUE)
395 $_$;
396
397
398 ALTER FUNCTION public.unread_posts(uid integer, OUT unread integer, OUT new integer) OWNER TO ndawn;
399
400 --
401 -- Name: update_forum_post(); Type: FUNCTION; Schema: public; Owner: ndawn
402 --
403
404 CREATE FUNCTION update_forum_post() RETURNS trigger
405     LANGUAGE plpgsql
406     AS $$
407 DECLARE
408     rec RECORD;
409 BEGIN
410     SELECT setweight(to_tsvector(coalesce(ft.subject,'')), 'A')
411             || setweight(to_tsvector(coalesce(u.username,'')), 'B') AS ts
412         INTO STRICT rec
413         FROM forum_threads ft, users u
414         WHERE NEW.ftid = ft.ftid AND u.uid = NEW.uid;
415     NEW.textsearch := rec.ts
416         || setweight(to_tsvector(coalesce(NEW.message,'')), 'D');
417     return NEW;
418 END;
419 $$;
420
421
422 ALTER FUNCTION public.update_forum_post() OWNER TO ndawn;
423
424 --
425 -- Name: update_forum_thread_posts(); Type: FUNCTION; Schema: public; Owner: ndawn
426 --
427
428 CREATE FUNCTION update_forum_thread_posts() RETURNS trigger
429     LANGUAGE plpgsql
430     AS $$
431 BEGIN
432
433         IF TG_OP = 'INSERT' THEN
434                 UPDATE forum_threads SET posts = posts + 1, mtime = GREATEST(NEW.time,mtime)
435                         WHERE ftid = NEW.ftid;
436         ELSIF TG_OP = 'DELETE' THEN
437                 UPDATE forum_threads SET posts = posts - 1 WHERE ftid = OLD.ftid;
438         ELSIF TG_OP = 'UPDATE' AND NEW.ftid <> OLD.ftid THEN
439                 UPDATE forum_threads SET posts = posts - 1 WHERE ftid = OLD.ftid;
440                 UPDATE forum_threads SET posts = posts + 1, mtime = GREATEST(NEW.time,mtime)
441                         WHERE ftid = NEW.ftid;
442         END IF;
443
444         return NEW;
445 END;
446 $$;
447
448
449 ALTER FUNCTION public.update_forum_thread_posts() OWNER TO ndawn;
450
451 --
452 -- Name: update_user_planet(); Type: FUNCTION; Schema: public; Owner: ndawn
453 --
454
455 CREATE FUNCTION update_user_planet() RETURNS trigger
456     LANGUAGE plpgsql
457     AS $$
458 BEGIN
459         IF COALESCE(NEW.pid <> OLD.pid,TRUE) OR NEW.username <> OLD.username THEN
460                 UPDATE planets SET nick = NULL WHERE pid = OLD.pid;
461                 UPDATE planets SET nick = NEW.username WHERE pid = NEW.pid;
462         END IF;
463
464         IF COALESCE(NEW.pid <> OLD.pid,TRUE)
465                         AND (SELECT TRUE FROM groupmembers WHERE gid = 'M' AND uid = NEW.uid) THEN
466                 UPDATE planets SET alliance = NULL WHERE pid = OLD.pid;
467                 UPDATE planets SET alliance = 'NewDawn' WHERE pid = NEW.pid;
468         END IF;
469         RETURN NEW;
470 END;
471 $$;
472
473
474 ALTER FUNCTION public.update_user_planet() OWNER TO ndawn;
475
476 --
477 -- Name: update_wiki_page(); Type: FUNCTION; Schema: public; Owner: ndawn
478 --
479
480 CREATE FUNCTION update_wiki_page() RETURNS trigger
481     LANGUAGE plpgsql
482     AS $$
483 DECLARE
484     rec RECORD;
485 BEGIN
486     SELECT setweight(to_tsvector(wpr.text), 'D') AS ts
487         INTO STRICT rec
488         FROM wiki_page_revisions wpr
489         WHERE NEW.wprev = wpr.wprev;
490     NEW.textsearch := rec.ts
491         || setweight(to_tsvector(NEW.namespace || ':' || NEW.name), 'A');
492     NEW.time = NOW();
493     return NEW;
494 END;
495 $$;
496
497
498 ALTER FUNCTION public.update_wiki_page() OWNER TO ndawn;
499
500 --
501 -- Name: updated_claim(); Type: FUNCTION; Schema: public; Owner: ndawn
502 --
503
504 CREATE FUNCTION updated_claim() RETURNS trigger
505     LANGUAGE plpgsql
506     AS $$
507 DECLARE
508         target INTEGER;
509 BEGIN
510         CASE TG_OP
511         WHEN 'INSERT' THEN
512                 target := NEW.target;
513         WHEN 'UPDATE' THEN
514                 target := NEW.target;
515                 IF NEW.launched AND NOT OLD.launched THEN
516                         UPDATE users
517                         SET attack_points = attack_points + 1
518                         WHERE uid = OLD.uid;
519
520                         INSERT INTO forum_posts (ftid,uid,message)
521                         VALUES((SELECT ftid FROM users WHERE uid = NEW.uid),NEW.uid
522                                 ,'Gave attack point for confirmation of attack on target '
523                                         || NEW.target || ', wave ' || NEW.wave
524                                 );
525                 END IF;
526         WHEN 'DELETE' THEN
527                 target := OLD.target;
528
529                 IF OLD.launched THEN
530                         UPDATE users
531                         SET attack_points = attack_points - 1
532                         WHERE uid = OLD.uid;
533                 END IF;
534         END CASE;
535         UPDATE raid_targets SET modified = NOW() WHERE id = target;
536         RETURN NEW;
537 END;
538 $$;
539
540
541 ALTER FUNCTION public.updated_claim() OWNER TO ndawn;
542
543 --
544 -- Name: concat(text); Type: AGGREGATE; Schema: public; Owner: ndawn
545 --
546
547 CREATE AGGREGATE concat(text) (
548     SFUNC = textcat,
549     STYPE = text,
550     INITCOND = ''
551 );
552
553
554 ALTER AGGREGATE public.concat(text) OWNER TO ndawn;
555
556 SET default_tablespace = '';
557
558 SET default_with_oids = false;
559
560 --
561 -- Name: alliance_stats; Type: TABLE; Schema: public; Owner: ndawn
562 --
563
564 CREATE TABLE alliance_stats (
565     aid integer NOT NULL,
566     tick integer NOT NULL,
567     size integer NOT NULL,
568     members integer NOT NULL,
569     score integer NOT NULL,
570     sizerank integer NOT NULL,
571     scorerank integer NOT NULL,
572     size_gain integer NOT NULL,
573     score_gain integer NOT NULL,
574     sizerank_gain integer NOT NULL,
575     scorerank_gain integer NOT NULL,
576     size_gain_day integer NOT NULL,
577     score_gain_day integer NOT NULL,
578     sizerank_gain_day integer NOT NULL,
579     scorerank_gain_day integer NOT NULL,
580     members_gain integer NOT NULL,
581     members_gain_day integer NOT NULL
582 );
583
584
585 ALTER TABLE alliance_stats OWNER TO ndawn;
586
587 --
588 -- Name: alliances; Type: TABLE; Schema: public; Owner: ndawn
589 --
590
591 CREATE TABLE alliances (
592     aid integer NOT NULL,
593     alliance text NOT NULL,
594     relationship ead_status DEFAULT ''::ead_status NOT NULL
595 );
596
597
598 ALTER TABLE alliances OWNER TO ndawn;
599
600 --
601 -- Name: development_scans; Type: TABLE; Schema: public; Owner: ndawn
602 --
603
604 CREATE TABLE development_scans (
605     id integer NOT NULL,
606     pid integer NOT NULL,
607     tick integer NOT NULL,
608     light_fac integer NOT NULL,
609     medium_fac integer NOT NULL,
610     heavy_fac integer NOT NULL,
611     amps integer NOT NULL,
612     distorters integer NOT NULL,
613     metal_ref integer NOT NULL,
614     crystal_ref integer NOT NULL,
615     eonium_ref integer NOT NULL,
616     reslabs integer NOT NULL,
617     fincents integer NOT NULL,
618     seccents integer NOT NULL,
619     total integer NOT NULL,
620     travel integer NOT NULL,
621     infra integer NOT NULL,
622     hulls integer NOT NULL,
623     waves integer NOT NULL,
624     extraction integer NOT NULL,
625     covert integer NOT NULL,
626     mining integer NOT NULL,
627     milcents integer NOT NULL,
628     structdefs integer NOT NULL
629 );
630
631
632 ALTER TABLE development_scans OWNER TO ndawn;
633
634 --
635 -- Name: current_development_scans; Type: VIEW; Schema: public; Owner: ndawn
636 --
637
638 CREATE VIEW current_development_scans AS
639  SELECT DISTINCT ON (ds.pid) ds.id,
640     ds.pid,
641     ds.tick,
642     ds.light_fac,
643     ds.medium_fac,
644     ds.heavy_fac,
645     ds.amps,
646     ds.distorters,
647     ds.metal_ref,
648     ds.crystal_ref,
649     ds.eonium_ref,
650     ds.reslabs,
651     ds.fincents,
652     ds.seccents,
653     ds.total,
654     ds.travel,
655     ds.infra,
656     ds.hulls,
657     ds.waves,
658     ds.extraction,
659     ds.covert,
660     ds.mining
661    FROM development_scans ds
662   ORDER BY ds.pid, ds.tick DESC, ds.id DESC;
663
664
665 ALTER TABLE current_development_scans OWNER TO ndawn;
666
667 --
668 -- Name: planet_scans; Type: TABLE; Schema: public; Owner: ndawn
669 --
670
671 CREATE TABLE planet_scans (
672     id integer NOT NULL,
673     pid integer NOT NULL,
674     tick integer NOT NULL,
675     metal bigint NOT NULL,
676     crystal bigint NOT NULL,
677     eonium bigint NOT NULL,
678     hidden bigint NOT NULL,
679     metal_roids integer NOT NULL,
680     crystal_roids integer NOT NULL,
681     eonium_roids integer NOT NULL,
682     agents integer NOT NULL,
683     guards integer NOT NULL,
684     light text NOT NULL,
685     medium text NOT NULL,
686     heavy text NOT NULL
687 );
688
689
690 ALTER TABLE planet_scans OWNER TO ndawn;
691
692 --
693 -- Name: current_planet_scans; Type: VIEW; Schema: public; Owner: ndawn
694 --
695
696 CREATE VIEW current_planet_scans AS
697  SELECT DISTINCT ON (ps.pid) ps.id,
698     ps.pid,
699     ps.tick,
700     ps.metal,
701     ps.crystal,
702     ps.eonium,
703     ps.hidden,
704     ps.metal_roids,
705     ps.crystal_roids,
706     ps.eonium_roids,
707     ps.agents,
708     ps.guards,
709     ps.light,
710     ps.medium,
711     ps.heavy
712    FROM planet_scans ps
713   ORDER BY ps.pid, ps.tick DESC, ps.id DESC;
714
715
716 ALTER TABLE current_planet_scans OWNER TO ndawn;
717
718 --
719 -- Name: planet_stats; Type: TABLE; Schema: public; Owner: ndawn
720 --
721
722 CREATE TABLE planet_stats (
723     pid integer NOT NULL,
724     tick integer NOT NULL,
725     x integer NOT NULL,
726     y integer NOT NULL,
727     z integer NOT NULL,
728     size integer NOT NULL,
729     score integer NOT NULL,
730     value integer NOT NULL,
731     xp integer NOT NULL,
732     sizerank integer NOT NULL,
733     scorerank integer NOT NULL,
734     valuerank integer NOT NULL,
735     xprank integer NOT NULL,
736     size_gain integer NOT NULL,
737     score_gain integer NOT NULL,
738     value_gain integer NOT NULL,
739     xp_gain integer NOT NULL,
740     sizerank_gain integer NOT NULL,
741     scorerank_gain integer NOT NULL,
742     valuerank_gain integer NOT NULL,
743     xprank_gain integer NOT NULL,
744     size_gain_day integer NOT NULL,
745     score_gain_day integer NOT NULL,
746     value_gain_day integer NOT NULL,
747     xp_gain_day integer NOT NULL,
748     sizerank_gain_day integer NOT NULL,
749     scorerank_gain_day integer NOT NULL,
750     valuerank_gain_day integer NOT NULL,
751     xprank_gain_day integer NOT NULL
752 );
753
754
755 ALTER TABLE planet_stats OWNER TO ndawn;
756
757 --
758 -- Name: planets; Type: TABLE; Schema: public; Owner: ndawn
759 --
760
761 CREATE TABLE planets (
762     pid integer NOT NULL,
763     ruler text NOT NULL,
764     planet text NOT NULL,
765     race race NOT NULL,
766     nick citext,
767     planet_status ead_status DEFAULT ''::ead_status NOT NULL,
768     hit_us integer DEFAULT 0 NOT NULL,
769     alliance text,
770     channel citext,
771     ftid integer NOT NULL,
772     gov governments DEFAULT ''::governments NOT NULL
773 )
774 WITH (fillfactor='50');
775
776
777 ALTER TABLE planets OWNER TO ndawn;
778
779 --
780 -- Name: current_planet_stats; Type: VIEW; Schema: public; Owner: ndawn
781 --
782
783 CREATE VIEW current_planet_stats AS
784  SELECT p.pid,
785     p.nick,
786     p.planet_status,
787     p.hit_us,
788     ps.x,
789     ps.y,
790     ps.z,
791     p.ruler,
792     p.planet,
793     p.race,
794     p.alliance,
795     a.relationship,
796     a.aid,
797     p.channel,
798     p.ftid,
799     p.gov,
800     ps.size,
801     ps.score,
802     ps.value,
803     ps.xp,
804     ps.sizerank,
805     ps.scorerank,
806     ps.valuerank,
807     ps.xprank
808    FROM ((( SELECT planet_stats.pid,
809             planet_stats.tick,
810             planet_stats.x,
811             planet_stats.y,
812             planet_stats.z,
813             planet_stats.size,
814             planet_stats.score,
815             planet_stats.value,
816             planet_stats.xp,
817             planet_stats.sizerank,
818             planet_stats.scorerank,
819             planet_stats.valuerank,
820             planet_stats.xprank
821            FROM planet_stats
822           WHERE (planet_stats.tick = ( SELECT max(planet_stats_1.tick) AS max
823                    FROM planet_stats planet_stats_1))) ps
824      JOIN planets p USING (pid))
825      LEFT JOIN alliances a USING (alliance));
826
827
828 ALTER TABLE current_planet_stats OWNER TO ndawn;
829
830 --
831 -- Name: alliance_resources; Type: VIEW; Schema: public; Owner: ndawn
832 --
833
834 CREATE VIEW alliance_resources AS
835  WITH planet_estimates AS (
836          SELECT ps.tick,
837             p.alliance,
838             ps.hidden,
839             p.size,
840             p.score,
841             ((ps.metal + ps.crystal) + ps.eonium) AS resources,
842             ((p.score + (((ps.metal + ps.crystal) + ps.eonium) / 300)) + (ps.hidden / 100)) AS nscore2,
843             ((((p.score + (((ps.metal + ps.crystal) + ps.eonium) / 300)) + (ps.hidden / 100)))::numeric + (((((endtick() - tick()) * (((250 * p.size) + (COALESCE(((ds.metal_ref + ds.crystal_ref) + ds.eonium_ref), 7) * 1000)) +
844                 CASE ds.extraction
845                     WHEN 0 THEN 3000
846                     WHEN 1 THEN 11500
847                     ELSE ((COALESCE(ds.extraction, 3) * 3000) * 3)
848                 END)))::numeric * (1.35 + (0.005 * (COALESCE(ds.fincents, 20))::numeric))) / (100)::numeric)) AS nscore3
849            FROM ((current_planet_stats p
850              JOIN current_planet_scans ps USING (pid))
851              LEFT JOIN current_development_scans ds USING (pid))
852         ), planet_ranks AS (
853          SELECT planet_estimates.tick,
854             planet_estimates.alliance,
855             planet_estimates.hidden,
856             planet_estimates.size,
857             planet_estimates.score,
858             planet_estimates.resources,
859             planet_estimates.nscore2,
860             planet_estimates.nscore3,
861             rank() OVER (PARTITION BY planet_estimates.alliance ORDER BY planet_estimates.score DESC) AS rank
862            FROM planet_estimates
863         ), top_planets AS (
864          SELECT planet_ranks.alliance,
865             sum(planet_ranks.resources) AS resources,
866             sum(planet_ranks.hidden) AS hidden,
867             (sum(planet_ranks.nscore2))::bigint AS nscore2,
868             (sum(planet_ranks.nscore3))::bigint AS nscore3,
869             count(*) AS planets,
870             sum(planet_ranks.score) AS score,
871             sum(planet_ranks.size) AS size,
872             (avg(planet_ranks.tick))::integer AS avgtick
873            FROM planet_ranks
874           WHERE (planet_ranks.rank <= 60)
875           GROUP BY planet_ranks.alliance
876         )
877  SELECT a.aid,
878     a.alliance,
879     a.relationship,
880     s.members,
881     r.planets,
882     s.score,
883     r.score AS topscore,
884     s.size,
885     r.size AS topsize,
886     r.resources,
887     r.hidden,
888     ((((s.score)::numeric + (r.resources / (300)::numeric)) + (r.hidden / (100)::numeric)))::bigint AS nscore,
889     r.nscore2,
890     r.nscore3,
891     r.avgtick
892    FROM ((alliances a
893      JOIN top_planets r USING (alliance))
894      LEFT JOIN ( SELECT alliance_stats.aid,
895             alliance_stats.score,
896             alliance_stats.size,
897             alliance_stats.members
898            FROM alliance_stats
899           WHERE (alliance_stats.tick = ( SELECT max(alliance_stats_1.tick) AS max
900                    FROM alliance_stats alliance_stats_1))) s USING (aid));
901
902
903 ALTER TABLE alliance_resources OWNER TO ndawn;
904
905 --
906 -- Name: alliances_id_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
907 --
908
909 CREATE SEQUENCE alliances_id_seq
910     START WITH 1
911     INCREMENT BY 1
912     NO MINVALUE
913     NO MAXVALUE
914     CACHE 1;
915
916
917 ALTER TABLE alliances_id_seq OWNER TO ndawn;
918
919 --
920 -- Name: alliances_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
921 --
922
923 ALTER SEQUENCE alliances_id_seq OWNED BY alliances.aid;
924
925
926 --
927 -- Name: available_planet_tags; Type: TABLE; Schema: public; Owner: ndawn
928 --
929
930 CREATE TABLE available_planet_tags (
931     tag citext NOT NULL
932 );
933
934
935 ALTER TABLE available_planet_tags OWNER TO ndawn;
936
937 --
938 -- Name: fleet_ships; Type: TABLE; Schema: public; Owner: ndawn
939 --
940
941 CREATE TABLE fleet_ships (
942     fid integer NOT NULL,
943     ship text NOT NULL,
944     amount integer NOT NULL,
945     num integer NOT NULL
946 );
947
948
949 ALTER TABLE fleet_ships OWNER TO ndawn;
950
951 --
952 -- Name: fleets; Type: TABLE; Schema: public; Owner: ndawn
953 --
954
955 CREATE TABLE fleets (
956     mission text NOT NULL,
957     tick integer NOT NULL,
958     fid integer NOT NULL,
959     pid integer NOT NULL,
960     amount integer NOT NULL,
961     name text NOT NULL
962 );
963
964
965 ALTER TABLE fleets OWNER TO ndawn;
966
967 --
968 -- Name: launch_confirmations; Type: TABLE; Schema: public; Owner: ndawn
969 --
970
971 CREATE TABLE launch_confirmations (
972     fid integer NOT NULL,
973     uid integer NOT NULL,
974     pid integer NOT NULL,
975     landing_tick integer NOT NULL,
976     eta integer NOT NULL,
977     back integer NOT NULL,
978     num integer NOT NULL
979 )
980 WITH (fillfactor='75');
981
982
983 ALTER TABLE launch_confirmations OWNER TO ndawn;
984
985 --
986 -- Name: ticks; Type: TABLE; Schema: public; Owner: ndawn
987 --
988
989 CREATE TABLE ticks (
990     t integer NOT NULL
991 );
992
993
994 ALTER TABLE ticks OWNER TO ndawn;
995
996 --
997 -- Name: users; Type: TABLE; Schema: public; Owner: ndawn
998 --
999
1000 CREATE TABLE users (
1001     uid integer NOT NULL,
1002     username citext NOT NULL,
1003     pid integer,
1004     password text NOT NULL,
1005     attack_points numeric(3,0) DEFAULT 0 NOT NULL,
1006     defense_points numeric(4,1) DEFAULT 0 NOT NULL,
1007     scan_points numeric(5,0) DEFAULT 0 NOT NULL,
1008     humor_points numeric(3,0) DEFAULT 0 NOT NULL,
1009     hostmask citext NOT NULL,
1010     sms text,
1011     rank integer,
1012     laston timestamp with time zone,
1013     ftid integer NOT NULL,
1014     css text,
1015     email text,
1016     pnick citext NOT NULL,
1017     info text,
1018     birthday date,
1019     timezone text DEFAULT 'GMT'::text NOT NULL,
1020     call_if_needed boolean DEFAULT false NOT NULL,
1021     sms_note text DEFAULT ''::text NOT NULL
1022 )
1023 WITH (fillfactor='50');
1024
1025
1026 ALTER TABLE users OWNER TO ndawn;
1027
1028 --
1029 -- Name: ships_home; Type: VIEW; Schema: public; Owner: ndawn
1030 --
1031
1032 CREATE VIEW ships_home AS
1033  SELECT f.tick,
1034     u.uid,
1035     u.username,
1036     u.pid,
1037     f.ship,
1038     COALESCE((f.amount - o.amount), (f.amount)::bigint) AS amount,
1039     COALESCE(o.fleets, (3)::bigint) AS fleets
1040    FROM ((users u
1041      JOIN ( SELECT f_1.t AS tick,
1042             f_1.pid,
1043             fs.ship,
1044             fs.amount
1045            FROM (( SELECT DISTINCT ON (ticks.t, f_2.pid, f_2.mission) ticks.t,
1046                     f_2.pid,
1047                     f_2.mission,
1048                     f_2.fid
1049                    FROM (ticks
1050                      CROSS JOIN fleets f_2)
1051                   WHERE ((f_2.tick <= ticks.t) AND (f_2.name = ANY (ARRAY['Main'::text, 'Advanced Unit'::text])) AND (f_2.mission = 'Full fleet'::text))
1052                   ORDER BY ticks.t, f_2.pid, f_2.mission, f_2.tick DESC, f_2.fid DESC) f_1
1053              JOIN fleet_ships fs USING (fid))) f USING (pid))
1054      LEFT JOIN ( SELECT ticks.t AS tick,
1055             f_1.pid,
1056             fs.ship,
1057             sum(fs.amount) AS amount,
1058             (3 - count(DISTINCT f_1.fid)) AS fleets
1059            FROM (((ticks
1060              CROSS JOIN fleets f_1)
1061              JOIN ( SELECT launch_confirmations.landing_tick,
1062                     launch_confirmations.fid,
1063                     launch_confirmations.back,
1064                     launch_confirmations.eta
1065                    FROM launch_confirmations) lc USING (fid))
1066              JOIN fleet_ships fs USING (fid))
1067           WHERE ((lc.back > ticks.t) AND (((lc.landing_tick - lc.eta) - 12) < ticks.t))
1068           GROUP BY ticks.t, f_1.pid, fs.ship) o USING (tick, pid, ship))
1069   WHERE (COALESCE((f.amount - o.amount), (f.amount)::bigint) > 0);
1070
1071
1072 ALTER TABLE ships_home OWNER TO ndawn;
1073
1074 --
1075 -- Name: available_ships; Type: VIEW; Schema: public; Owner: ndawn
1076 --
1077
1078 CREATE VIEW available_ships AS
1079  SELECT ships_home.uid,
1080     ships_home.username,
1081     ships_home.pid,
1082     ships_home.ship,
1083     ships_home.amount,
1084     ships_home.fleets
1085    FROM ships_home
1086   WHERE (ships_home.tick = tick());
1087
1088
1089 ALTER TABLE available_ships OWNER TO ndawn;
1090
1091 --
1092 -- Name: call_statuses; Type: TABLE; Schema: public; Owner: ndawn
1093 --
1094
1095 CREATE TABLE call_statuses (
1096     status text NOT NULL
1097 );
1098
1099
1100 ALTER TABLE call_statuses OWNER TO ndawn;
1101
1102 --
1103 -- Name: calls; Type: TABLE; Schema: public; Owner: ndawn
1104 --
1105
1106 CREATE TABLE calls (
1107     call integer NOT NULL,
1108     uid integer NOT NULL,
1109     dc integer,
1110     landing_tick integer NOT NULL,
1111     info text NOT NULL,
1112     ftid integer NOT NULL,
1113     calc text DEFAULT ''::text NOT NULL,
1114     status text DEFAULT 'Open'::text NOT NULL
1115 );
1116
1117
1118 ALTER TABLE calls OWNER TO ndawn;
1119
1120 --
1121 -- Name: calls_id_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
1122 --
1123
1124 CREATE SEQUENCE calls_id_seq
1125     START WITH 1
1126     INCREMENT BY 1
1127     NO MINVALUE
1128     NO MAXVALUE
1129     CACHE 1;
1130
1131
1132 ALTER TABLE calls_id_seq OWNER TO ndawn;
1133
1134 --
1135 -- Name: calls_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
1136 --
1137
1138 ALTER SEQUENCE calls_id_seq OWNED BY calls.call;
1139
1140
1141 --
1142 -- Name: channel_flags; Type: TABLE; Schema: public; Owner: ndawn
1143 --
1144
1145 CREATE TABLE channel_flags (
1146     name text NOT NULL,
1147     flag character(1) NOT NULL
1148 );
1149
1150
1151 ALTER TABLE channel_flags OWNER TO ndawn;
1152
1153 --
1154 -- Name: channel_group_flags; Type: TABLE; Schema: public; Owner: ndawn
1155 --
1156
1157 CREATE TABLE channel_group_flags (
1158     channel citext NOT NULL,
1159     gid character(1) NOT NULL,
1160     flag character(1) NOT NULL
1161 );
1162
1163
1164 ALTER TABLE channel_group_flags OWNER TO ndawn;
1165
1166 --
1167 -- Name: channels; Type: TABLE; Schema: public; Owner: ndawn
1168 --
1169
1170 CREATE TABLE channels (
1171     channel citext NOT NULL,
1172     description text NOT NULL
1173 );
1174
1175
1176 ALTER TABLE channels OWNER TO ndawn;
1177
1178 --
1179 -- Name: clickatell; Type: TABLE; Schema: public; Owner: ndawn
1180 --
1181
1182 CREATE TABLE clickatell (
1183     api_id text NOT NULL,
1184     username text NOT NULL,
1185     password text NOT NULL
1186 );
1187
1188
1189 ALTER TABLE clickatell OWNER TO ndawn;
1190
1191 --
1192 -- Name: covop_attacks; Type: TABLE; Schema: public; Owner: ndawn
1193 --
1194
1195 CREATE TABLE covop_attacks (
1196     uid integer NOT NULL,
1197     tick integer NOT NULL,
1198     pid integer NOT NULL
1199 );
1200
1201
1202 ALTER TABLE covop_attacks OWNER TO ndawn;
1203
1204 --
1205 -- Name: current_planet_stats_full; Type: VIEW; Schema: public; Owner: ndawn
1206 --
1207
1208 CREATE VIEW current_planet_stats_full AS
1209  SELECT p.alliance,
1210     p.pid,
1211     p.ruler,
1212     p.planet,
1213     p.race,
1214     p.nick,
1215     p.planet_status,
1216     p.hit_us,
1217     p.channel,
1218     p.ftid,
1219     p.gov,
1220     ps.tick,
1221     ps.x,
1222     ps.y,
1223     ps.z,
1224     ps.size,
1225     ps.score,
1226     ps.value,
1227     ps.xp,
1228     ps.sizerank,
1229     ps.scorerank,
1230     ps.valuerank,
1231     ps.xprank,
1232     ps.size_gain,
1233     ps.score_gain,
1234     ps.value_gain,
1235     ps.xp_gain,
1236     ps.sizerank_gain,
1237     ps.scorerank_gain,
1238     ps.valuerank_gain,
1239     ps.xprank_gain,
1240     ps.size_gain_day,
1241     ps.score_gain_day,
1242     ps.value_gain_day,
1243     ps.xp_gain_day,
1244     ps.sizerank_gain_day,
1245     ps.scorerank_gain_day,
1246     ps.valuerank_gain_day,
1247     ps.xprank_gain_day,
1248     alliances.aid,
1249     alliances.relationship
1250    FROM ((planets p
1251      JOIN ( SELECT planet_stats.pid,
1252             planet_stats.tick,
1253             planet_stats.x,
1254             planet_stats.y,
1255             planet_stats.z,
1256             planet_stats.size,
1257             planet_stats.score,
1258             planet_stats.value,
1259             planet_stats.xp,
1260             planet_stats.sizerank,
1261             planet_stats.scorerank,
1262             planet_stats.valuerank,
1263             planet_stats.xprank,
1264             planet_stats.size_gain,
1265             planet_stats.score_gain,
1266             planet_stats.value_gain,
1267             planet_stats.xp_gain,
1268             planet_stats.sizerank_gain,
1269             planet_stats.scorerank_gain,
1270             planet_stats.valuerank_gain,
1271             planet_stats.xprank_gain,
1272             planet_stats.size_gain_day,
1273             planet_stats.score_gain_day,
1274             planet_stats.value_gain_day,
1275             planet_stats.xp_gain_day,
1276             planet_stats.sizerank_gain_day,
1277             planet_stats.scorerank_gain_day,
1278             planet_stats.valuerank_gain_day,
1279             planet_stats.xprank_gain_day
1280            FROM planet_stats
1281           WHERE (planet_stats.tick = ( SELECT max(planet_stats_1.tick) AS max
1282                    FROM planet_stats planet_stats_1))) ps USING (pid))
1283      LEFT JOIN alliances USING (alliance));
1284
1285
1286 ALTER TABLE current_planet_stats_full OWNER TO ndawn;
1287
1288 --
1289 -- Name: ship_stats; Type: TABLE; Schema: public; Owner: ndawn
1290 --
1291
1292 CREATE TABLE ship_stats (
1293     ship text NOT NULL,
1294     class text NOT NULL,
1295     t1 text NOT NULL,
1296     type text NOT NULL,
1297     init integer NOT NULL,
1298     armor integer NOT NULL,
1299     damage integer NOT NULL,
1300     metal integer NOT NULL,
1301     crystal integer NOT NULL,
1302     eonium integer NOT NULL,
1303     race text NOT NULL,
1304     guns integer DEFAULT 0 NOT NULL,
1305     eres integer DEFAULT 0 NOT NULL,
1306     t2 text,
1307     t3 text,
1308     id integer NOT NULL
1309 );
1310
1311
1312 ALTER TABLE ship_stats OWNER TO ndawn;
1313
1314 --
1315 -- Name: def_leeches; Type: VIEW; Schema: public; Owner: ndawn
1316 --
1317
1318 CREATE VIEW def_leeches AS
1319  WITH f AS (
1320          SELECT lc.uid,
1321             lc.fid,
1322             lc.pid,
1323             f.pid AS fpid,
1324             lc.landing_tick,
1325             lc.eta,
1326             lc.back,
1327             sum((((fs.amount * ((s.metal + s.crystal) + s.eonium)))::numeric / 100.0)) AS value
1328            FROM (((launch_confirmations lc
1329              JOIN fleets f USING (fid))
1330              JOIN fleet_ships fs USING (fid))
1331              JOIN ship_stats s ON ((fs.ship = s.ship)))
1332           WHERE (f.mission = 'Defend'::text)
1333           GROUP BY lc.uid, lc.fid, lc.pid, f.pid, lc.landing_tick, lc.eta, lc.back
1334         ), f2 AS (
1335          SELECT f.uid,
1336             sum((f.value / (COALESCE(p.value, ( SELECT planet_stats.value
1337                    FROM planet_stats
1338                   WHERE ((planet_stats.pid = f.fpid) AND (planet_stats.tick = (c.landing_tick - f.eta)))
1339                   ORDER BY planet_stats.tick DESC
1340                  LIMIT 1)))::numeric)) AS sent_value
1341            FROM (((calls c
1342              JOIN users u USING (uid))
1343              JOIN f USING (pid, landing_tick))
1344              LEFT JOIN ( SELECT planet_stats.pid AS fpid,
1345                     planet_stats.value,
1346                     planet_stats.tick AS landing_tick
1347                    FROM planet_stats) p USING (fpid, landing_tick))
1348           GROUP BY f.uid
1349         )
1350  SELECT d.uid,
1351     d.username,
1352     d.defense_points,
1353     count(d.call) AS calls,
1354     sum(d.fleets) AS fleets,
1355     sum(d.recalled) AS recalled,
1356     count(NULLIF(d.fleets, 0)) AS defended_calls,
1357     (sum(d.value))::numeric(4,2) AS value,
1358     (f2.sent_value)::numeric(4,2) AS sent_value
1359    FROM (( SELECT u.uid,
1360             u.username,
1361             u.defense_points,
1362             c.call,
1363             count(f.back) AS fleets,
1364             count(NULLIF((((f.landing_tick + f.eta) - 1) = f.back), true)) AS recalled,
1365             sum((f.value / (COALESCE(p.value, ( SELECT planet_stats.value
1366                    FROM planet_stats
1367                   WHERE ((planet_stats.pid = f.pid) AND (planet_stats.tick = (c.landing_tick - f.eta)))
1368                   ORDER BY planet_stats.tick DESC
1369                  LIMIT 1)))::numeric)) AS value
1370            FROM (((users u
1371              JOIN calls c USING (uid))
1372              LEFT JOIN f USING (pid, landing_tick))
1373              LEFT JOIN ( SELECT planet_stats.pid,
1374                     planet_stats.value,
1375                     planet_stats.tick AS landing_tick
1376                    FROM planet_stats) p USING (pid, landing_tick))
1377           GROUP BY u.uid, u.username, u.defense_points, c.call) d
1378      LEFT JOIN f2 USING (uid))
1379   GROUP BY d.uid, d.username, d.defense_points, f2.sent_value;
1380
1381
1382 ALTER TABLE def_leeches OWNER TO ndawn;
1383
1384 --
1385 -- Name: incomings; Type: TABLE; Schema: public; Owner: ndawn
1386 --
1387
1388 CREATE TABLE incomings (
1389     call integer NOT NULL,
1390     pid integer NOT NULL,
1391     eta integer NOT NULL,
1392     amount integer NOT NULL,
1393     fleet text NOT NULL,
1394     shiptype text DEFAULT '?'::text NOT NULL,
1395     inc integer NOT NULL
1396 );
1397
1398
1399 ALTER TABLE incomings OWNER TO ndawn;
1400
1401 --
1402 -- Name: defcalls; Type: VIEW; Schema: public; Owner: ndawn
1403 --
1404
1405 CREATE VIEW defcalls AS
1406  SELECT c.call,
1407     c.status,
1408     c.uid,
1409     c.landing_tick,
1410     dc.username AS dc,
1411     (c.landing_tick - tick()) AS curreta,
1412     array_agg(COALESCE((p2.race)::text, ''::text)) AS race,
1413     array_agg(COALESCE(i.amount, 0)) AS amount,
1414     array_agg(COALESCE(i.eta, 0)) AS eta,
1415     array_agg(COALESCE(i.shiptype, ''::text)) AS shiptype,
1416     array_agg(COALESCE(p2.alliance, '?'::text)) AS alliance,
1417     array_agg(coords(p2.x, p2.y, p2.z)) AS attackers
1418    FROM (((calls c
1419      LEFT JOIN incomings i USING (call))
1420      LEFT JOIN current_planet_stats p2 USING (pid))
1421      LEFT JOIN users dc ON ((c.dc = dc.uid)))
1422   GROUP BY c.call, c.uid, dc.username, c.landing_tick, c.status;
1423
1424
1425 ALTER TABLE defcalls OWNER TO ndawn;
1426
1427 --
1428 -- Name: defense_missions; Type: TABLE; Schema: public; Owner: ndawn
1429 --
1430
1431 CREATE TABLE defense_missions (
1432     call integer NOT NULL,
1433     fleet integer NOT NULL,
1434     announced boolean DEFAULT false NOT NULL,
1435     pointed boolean DEFAULT false NOT NULL
1436 );
1437
1438
1439 ALTER TABLE defense_missions OWNER TO ndawn;
1440
1441 --
1442 -- Name: dumps; Type: TABLE; Schema: public; Owner: ndawn
1443 --
1444
1445 CREATE TABLE dumps (
1446     tick integer NOT NULL,
1447     type text NOT NULL,
1448     dump text NOT NULL,
1449     modified integer DEFAULT 0 NOT NULL
1450 );
1451
1452
1453 ALTER TABLE dumps OWNER TO ndawn;
1454
1455 --
1456 -- Name: email_change; Type: TABLE; Schema: public; Owner: ndawn
1457 --
1458
1459 CREATE TABLE email_change (
1460     id text DEFAULT md5(((now() + (random() * '100 years'::interval)))::text) NOT NULL,
1461     uid integer NOT NULL,
1462     email text NOT NULL,
1463     confirmed boolean DEFAULT false NOT NULL
1464 );
1465
1466
1467 ALTER TABLE email_change OWNER TO ndawn;
1468
1469 --
1470 -- Name: fleet_scans; Type: TABLE; Schema: public; Owner: ndawn
1471 --
1472
1473 CREATE TABLE fleet_scans (
1474     fid integer NOT NULL,
1475     id integer NOT NULL
1476 );
1477
1478
1479 ALTER TABLE fleet_scans OWNER TO ndawn;
1480
1481 --
1482 -- Name: fleet_ships_num_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
1483 --
1484
1485 CREATE SEQUENCE fleet_ships_num_seq
1486     START WITH 1
1487     INCREMENT BY 1
1488     NO MINVALUE
1489     NO MAXVALUE
1490     CACHE 1;
1491
1492
1493 ALTER TABLE fleet_ships_num_seq OWNER TO ndawn;
1494
1495 --
1496 -- Name: fleet_ships_num_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
1497 --
1498
1499 ALTER SEQUENCE fleet_ships_num_seq OWNED BY fleet_ships.num;
1500
1501
1502 --
1503 -- Name: fleets_id_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
1504 --
1505
1506 CREATE SEQUENCE fleets_id_seq
1507     START WITH 1
1508     INCREMENT BY 1
1509     NO MINVALUE
1510     NO MAXVALUE
1511     CACHE 1;
1512
1513
1514 ALTER TABLE fleets_id_seq OWNER TO ndawn;
1515
1516 --
1517 -- Name: fleets_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
1518 --
1519
1520 ALTER SEQUENCE fleets_id_seq OWNED BY fleets.fid;
1521
1522
1523 --
1524 -- Name: forum_access; Type: TABLE; Schema: public; Owner: ndawn
1525 --
1526
1527 CREATE TABLE forum_access (
1528     fbid integer NOT NULL,
1529     gid character(1) NOT NULL,
1530     post boolean DEFAULT false NOT NULL,
1531     moderate boolean DEFAULT false NOT NULL
1532 );
1533
1534
1535 ALTER TABLE forum_access OWNER TO ndawn;
1536
1537 --
1538 -- Name: forum_boards; Type: TABLE; Schema: public; Owner: ndawn
1539 --
1540
1541 CREATE TABLE forum_boards (
1542     fbid integer NOT NULL,
1543     fcid integer NOT NULL,
1544     board text NOT NULL
1545 );
1546
1547
1548 ALTER TABLE forum_boards OWNER TO ndawn;
1549
1550 --
1551 -- Name: forum_boards_fbid_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
1552 --
1553
1554 CREATE SEQUENCE forum_boards_fbid_seq
1555     START WITH 1
1556     INCREMENT BY 1
1557     NO MINVALUE
1558     NO MAXVALUE
1559     CACHE 1;
1560
1561
1562 ALTER TABLE forum_boards_fbid_seq OWNER TO ndawn;
1563
1564 --
1565 -- Name: forum_boards_fbid_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
1566 --
1567
1568 ALTER SEQUENCE forum_boards_fbid_seq OWNED BY forum_boards.fbid;
1569
1570
1571 --
1572 -- Name: forum_categories; Type: TABLE; Schema: public; Owner: ndawn
1573 --
1574
1575 CREATE TABLE forum_categories (
1576     fcid integer NOT NULL,
1577     category text NOT NULL
1578 );
1579
1580
1581 ALTER TABLE forum_categories OWNER TO ndawn;
1582
1583 --
1584 -- Name: forum_categories_fcid_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
1585 --
1586
1587 CREATE SEQUENCE forum_categories_fcid_seq
1588     START WITH 1
1589     INCREMENT BY 1
1590     NO MINVALUE
1591     NO MAXVALUE
1592     CACHE 1;
1593
1594
1595 ALTER TABLE forum_categories_fcid_seq OWNER TO ndawn;
1596
1597 --
1598 -- Name: forum_categories_fcid_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
1599 --
1600
1601 ALTER SEQUENCE forum_categories_fcid_seq OWNED BY forum_categories.fcid;
1602
1603
1604 --
1605 -- Name: forum_posts; Type: TABLE; Schema: public; Owner: ndawn
1606 --
1607
1608 CREATE TABLE forum_posts (
1609     fpid integer NOT NULL,
1610     ftid integer NOT NULL,
1611     message text NOT NULL,
1612     "time" timestamp with time zone DEFAULT now() NOT NULL,
1613     uid integer NOT NULL,
1614     textsearch tsvector NOT NULL
1615 );
1616
1617
1618 ALTER TABLE forum_posts OWNER TO ndawn;
1619
1620 --
1621 -- Name: forum_posts_fpid_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
1622 --
1623
1624 CREATE SEQUENCE forum_posts_fpid_seq
1625     START WITH 1
1626     INCREMENT BY 1
1627     NO MINVALUE
1628     NO MAXVALUE
1629     CACHE 1;
1630
1631
1632 ALTER TABLE forum_posts_fpid_seq OWNER TO ndawn;
1633
1634 --
1635 -- Name: forum_posts_fpid_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
1636 --
1637
1638 ALTER SEQUENCE forum_posts_fpid_seq OWNED BY forum_posts.fpid;
1639
1640
1641 --
1642 -- Name: forum_priv_access; Type: TABLE; Schema: public; Owner: ndawn
1643 --
1644
1645 CREATE TABLE forum_priv_access (
1646     uid integer NOT NULL,
1647     ftid integer NOT NULL
1648 );
1649
1650
1651 ALTER TABLE forum_priv_access OWNER TO ndawn;
1652
1653 --
1654 -- Name: forum_thread_visits; Type: TABLE; Schema: public; Owner: ndawn
1655 --
1656
1657 CREATE TABLE forum_thread_visits (
1658     uid integer NOT NULL,
1659     ftid integer NOT NULL,
1660     "time" timestamp with time zone DEFAULT now() NOT NULL
1661 )
1662 WITH (fillfactor='50');
1663
1664
1665 ALTER TABLE forum_thread_visits OWNER TO ndawn;
1666
1667 --
1668 -- Name: forum_threads; Type: TABLE; Schema: public; Owner: ndawn
1669 --
1670
1671 CREATE TABLE forum_threads (
1672     ftid integer NOT NULL,
1673     fbid integer NOT NULL,
1674     subject text NOT NULL,
1675     sticky boolean DEFAULT false NOT NULL,
1676     uid integer NOT NULL,
1677     posts integer DEFAULT 0 NOT NULL,
1678     mtime timestamp with time zone DEFAULT now() NOT NULL,
1679     ctime timestamp with time zone DEFAULT now() NOT NULL
1680 )
1681 WITH (fillfactor='50');
1682
1683
1684 ALTER TABLE forum_threads OWNER TO ndawn;
1685
1686 --
1687 -- Name: forum_threads_ftid_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
1688 --
1689
1690 CREATE SEQUENCE forum_threads_ftid_seq
1691     START WITH 1
1692     INCREMENT BY 1
1693     NO MINVALUE
1694     NO MAXVALUE
1695     CACHE 1;
1696
1697
1698 ALTER TABLE forum_threads_ftid_seq OWNER TO ndawn;
1699
1700 --
1701 -- Name: forum_threads_ftid_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
1702 --
1703
1704 ALTER SEQUENCE forum_threads_ftid_seq OWNED BY forum_threads.ftid;
1705
1706
1707 --
1708 -- Name: groupmembers; Type: TABLE; Schema: public; Owner: ndawn
1709 --
1710
1711 CREATE TABLE groupmembers (
1712     gid character(1) NOT NULL,
1713     uid integer NOT NULL
1714 );
1715
1716
1717 ALTER TABLE groupmembers OWNER TO ndawn;
1718
1719 --
1720 -- Name: users_defprio; Type: VIEW; Schema: public; Owner: ndawn
1721 --
1722
1723 CREATE VIEW users_defprio AS
1724  SELECT u.uid,
1725     u.username,
1726     u.pid,
1727     u.password,
1728     u.attack_points,
1729     u.defense_points,
1730     u.scan_points,
1731     u.humor_points,
1732     u.hostmask,
1733     u.sms,
1734     u.rank,
1735     u.laston,
1736     u.ftid,
1737     u.css,
1738     u.email,
1739     u.pnick,
1740     u.info,
1741     u.birthday,
1742     u.timezone,
1743     u.call_if_needed,
1744     u.sms_note,
1745     ((((((0.2 * (u.attack_points / GREATEST(a.attack, (1)::numeric))) + (0.4 * (u.defense_points / GREATEST(a.defense, (1)::numeric)))) + (0.2 * ((p.size)::numeric / a.size))) + (0.05 * ((p.score)::numeric / a.score))) + (0.15 * ((p.value)::numeric / a.value))))::numeric(3,2) AS defprio
1746    FROM (users u
1747      LEFT JOIN current_planet_stats p USING (pid)),
1748     ( SELECT avg(u_1.attack_points) AS attack,
1749             avg(u_1.defense_points) AS defense,
1750             avg(p_1.size) AS size,
1751             avg(p_1.score) AS score,
1752             avg(p_1.value) AS value
1753            FROM (users u_1
1754              JOIN current_planet_stats p_1 USING (pid))
1755           WHERE (u_1.uid IN ( SELECT groupmembers.uid
1756                    FROM groupmembers
1757                   WHERE (groupmembers.gid = 'M'::bpchar)))) a;
1758
1759
1760 ALTER TABLE users_defprio OWNER TO ndawn;
1761
1762 --
1763 -- Name: full_defcalls; Type: VIEW; Schema: public; Owner: ndawn
1764 --
1765
1766 CREATE VIEW full_defcalls AS
1767  SELECT c.call,
1768     c.status,
1769     p.x,
1770     p.y,
1771     p.z,
1772     u.pid,
1773     c.landing_tick,
1774     c.dc,
1775     c.curreta,
1776     u.defprio,
1777     c.race,
1778     c.amount,
1779     c.eta,
1780     c.shiptype,
1781     c.alliance,
1782     c.attackers,
1783     count(NULLIF((f.back = ((f.landing_tick + f.eta) - 1)), false)) AS fleets
1784    FROM (((users_defprio u
1785      JOIN current_planet_stats p USING (pid))
1786      JOIN defcalls c USING (uid))
1787      LEFT JOIN launch_confirmations f USING (pid, landing_tick))
1788   GROUP BY c.call, p.x, p.y, p.z, u.pid, c.landing_tick, c.dc, c.curreta, u.defprio, c.race, c.amount, c.eta, c.shiptype, c.alliance, c.attackers, c.status;
1789
1790
1791 ALTER TABLE full_defcalls OWNER TO ndawn;
1792
1793 --
1794 -- Name: full_fleets; Type: TABLE; Schema: public; Owner: ndawn
1795 --
1796
1797 CREATE TABLE full_fleets (
1798     fid integer NOT NULL,
1799     uid integer NOT NULL
1800 );
1801
1802
1803 ALTER TABLE full_fleets OWNER TO ndawn;
1804
1805 --
1806 -- Name: intel; Type: TABLE; Schema: public; Owner: ndawn
1807 --
1808
1809 CREATE TABLE intel (
1810     id integer NOT NULL,
1811     uid integer NOT NULL,
1812     sender integer NOT NULL,
1813     target integer NOT NULL,
1814     mission text NOT NULL,
1815     name text NOT NULL,
1816     amount integer,
1817     tick integer NOT NULL,
1818     eta integer NOT NULL,
1819     back integer,
1820     ingal boolean NOT NULL
1821 );
1822
1823
1824 ALTER TABLE intel OWNER TO ndawn;
1825
1826 --
1827 -- Name: full_intel; Type: VIEW; Schema: public; Owner: ndawn
1828 --
1829
1830 CREATE VIEW full_intel AS
1831  SELECT s.alliance AS salliance,
1832     coords(s.x, s.y, s.z) AS scoords,
1833     i.sender,
1834     s.nick AS snick,
1835     t.alliance AS talliance,
1836     coords(t.x, t.y, t.z) AS tcoords,
1837     i.target,
1838     t.nick AS tnick,
1839     i.mission,
1840     i.tick,
1841     min(i.eta) AS eta,
1842     i.amount,
1843     i.ingal,
1844     i.uid,
1845     u.username
1846    FROM (((intel i
1847      JOIN users u USING (uid))
1848      JOIN current_planet_stats t ON ((i.target = t.pid)))
1849      JOIN current_planet_stats s ON ((i.sender = s.pid)))
1850   GROUP BY i.tick, i.mission, t.x, t.y, t.z, s.x, s.y, s.z, i.amount, i.ingal, u.username, i.uid, t.alliance, s.alliance, t.nick, s.nick, i.sender, i.target;
1851
1852
1853 ALTER TABLE full_intel OWNER TO ndawn;
1854
1855 --
1856 -- Name: galaxies; Type: TABLE; Schema: public; Owner: ndawn
1857 --
1858
1859 CREATE TABLE galaxies (
1860     x integer NOT NULL,
1861     y integer NOT NULL,
1862     tick integer NOT NULL,
1863     size integer NOT NULL,
1864     score integer NOT NULL,
1865     value integer NOT NULL,
1866     xp integer NOT NULL,
1867     planets integer NOT NULL,
1868     sizerank integer NOT NULL,
1869     scorerank integer NOT NULL,
1870     valuerank integer NOT NULL,
1871     xprank integer NOT NULL,
1872     size_gain integer NOT NULL,
1873     score_gain integer NOT NULL,
1874     value_gain integer NOT NULL,
1875     xp_gain integer NOT NULL,
1876     planets_gain integer NOT NULL,
1877     sizerank_gain integer NOT NULL,
1878     scorerank_gain integer NOT NULL,
1879     valuerank_gain integer NOT NULL,
1880     xprank_gain integer NOT NULL,
1881     size_gain_day integer NOT NULL,
1882     score_gain_day integer NOT NULL,
1883     value_gain_day integer NOT NULL,
1884     xp_gain_day integer NOT NULL,
1885     planets_gain_day integer NOT NULL,
1886     sizerank_gain_day integer NOT NULL,
1887     scorerank_gain_day integer NOT NULL,
1888     valuerank_gain_day integer NOT NULL,
1889     xprank_gain_day integer NOT NULL
1890 );
1891
1892
1893 ALTER TABLE galaxies OWNER TO ndawn;
1894
1895 --
1896 -- Name: group_roles; Type: TABLE; Schema: public; Owner: ndawn
1897 --
1898
1899 CREATE TABLE group_roles (
1900     gid character(1) NOT NULL,
1901     role character varying(32) NOT NULL
1902 );
1903
1904
1905 ALTER TABLE group_roles OWNER TO ndawn;
1906
1907 --
1908 -- Name: groups; Type: TABLE; Schema: public; Owner: ndawn
1909 --
1910
1911 CREATE TABLE groups (
1912     groupname text NOT NULL,
1913     gid character(1) NOT NULL
1914 );
1915
1916
1917 ALTER TABLE groups OWNER TO ndawn;
1918
1919 --
1920 -- Name: incomings_id_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
1921 --
1922
1923 CREATE SEQUENCE incomings_id_seq
1924     START WITH 1
1925     INCREMENT BY 1
1926     NO MINVALUE
1927     NO MAXVALUE
1928     CACHE 1;
1929
1930
1931 ALTER TABLE incomings_id_seq OWNER TO ndawn;
1932
1933 --
1934 -- Name: incomings_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
1935 --
1936
1937 ALTER SEQUENCE incomings_id_seq OWNED BY incomings.inc;
1938
1939
1940 --
1941 -- Name: intel_id_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
1942 --
1943
1944 CREATE SEQUENCE intel_id_seq
1945     START WITH 1
1946     INCREMENT BY 1
1947     NO MINVALUE
1948     NO MAXVALUE
1949     CACHE 1;
1950
1951
1952 ALTER TABLE intel_id_seq OWNER TO ndawn;
1953
1954 --
1955 -- Name: intel_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
1956 --
1957
1958 ALTER SEQUENCE intel_id_seq OWNED BY intel.id;
1959
1960
1961 --
1962 -- Name: intel_scans; Type: TABLE; Schema: public; Owner: ndawn
1963 --
1964
1965 CREATE TABLE intel_scans (
1966     id integer NOT NULL,
1967     intel integer NOT NULL
1968 );
1969
1970
1971 ALTER TABLE intel_scans OWNER TO ndawn;
1972
1973 --
1974 -- Name: irc_requests; Type: TABLE; Schema: public; Owner: ndawn
1975 --
1976
1977 CREATE TABLE irc_requests (
1978     id integer NOT NULL,
1979     channel text NOT NULL,
1980     message text NOT NULL,
1981     sent boolean DEFAULT false NOT NULL,
1982     uid integer NOT NULL
1983 );
1984
1985
1986 ALTER TABLE irc_requests OWNER TO ndawn;
1987
1988 --
1989 -- Name: irc_requests_id_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
1990 --
1991
1992 CREATE SEQUENCE irc_requests_id_seq
1993     START WITH 1
1994     INCREMENT BY 1
1995     NO MINVALUE
1996     NO MAXVALUE
1997     CACHE 1;
1998
1999
2000 ALTER TABLE irc_requests_id_seq OWNER TO ndawn;
2001
2002 --
2003 -- Name: irc_requests_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
2004 --
2005
2006 ALTER SEQUENCE irc_requests_id_seq OWNED BY irc_requests.id;
2007
2008
2009 --
2010 -- Name: last_smokes; Type: TABLE; Schema: public; Owner: ndawn
2011 --
2012
2013 CREATE TABLE last_smokes (
2014     nick citext NOT NULL,
2015     "time" timestamp with time zone NOT NULL
2016 );
2017
2018
2019 ALTER TABLE last_smokes OWNER TO ndawn;
2020
2021 --
2022 -- Name: misc; Type: TABLE; Schema: public; Owner: ndawn
2023 --
2024
2025 CREATE TABLE misc (
2026     id text NOT NULL,
2027     value text
2028 );
2029
2030
2031 ALTER TABLE misc OWNER TO ndawn;
2032
2033 --
2034 -- Name: planet_tags; Type: TABLE; Schema: public; Owner: ndawn
2035 --
2036
2037 CREATE TABLE planet_tags (
2038     pid integer NOT NULL,
2039     tag citext NOT NULL,
2040     uid integer NOT NULL,
2041     "time" timestamp with time zone DEFAULT now() NOT NULL
2042 );
2043
2044
2045 ALTER TABLE planet_tags OWNER TO ndawn;
2046
2047 --
2048 -- Name: planets_id_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
2049 --
2050
2051 CREATE SEQUENCE planets_id_seq
2052     START WITH 1
2053     INCREMENT BY 1
2054     NO MINVALUE
2055     NO MAXVALUE
2056     CACHE 1;
2057
2058
2059 ALTER TABLE planets_id_seq OWNER TO ndawn;
2060
2061 --
2062 -- Name: planets_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
2063 --
2064
2065 ALTER SEQUENCE planets_id_seq OWNED BY planets.pid;
2066
2067
2068 --
2069 -- Name: raid_access; Type: TABLE; Schema: public; Owner: ndawn
2070 --
2071
2072 CREATE TABLE raid_access (
2073     raid integer NOT NULL,
2074     gid character(1) NOT NULL
2075 );
2076
2077
2078 ALTER TABLE raid_access OWNER TO ndawn;
2079
2080 --
2081 -- Name: raid_claims; Type: TABLE; Schema: public; Owner: ndawn
2082 --
2083
2084 CREATE TABLE raid_claims (
2085     target integer NOT NULL,
2086     uid integer NOT NULL,
2087     wave integer NOT NULL,
2088     joinable boolean DEFAULT false NOT NULL,
2089     launched boolean DEFAULT false NOT NULL,
2090     "timestamp" timestamp with time zone DEFAULT now() NOT NULL
2091 )
2092 WITH (fillfactor='50');
2093
2094
2095 ALTER TABLE raid_claims OWNER TO ndawn;
2096
2097 --
2098 -- Name: raid_targets; Type: TABLE; Schema: public; Owner: ndawn
2099 --
2100
2101 CREATE TABLE raid_targets (
2102     id integer NOT NULL,
2103     raid integer NOT NULL,
2104     pid integer NOT NULL,
2105     comment text,
2106     modified timestamp with time zone DEFAULT now() NOT NULL
2107 )
2108 WITH (fillfactor='50');
2109
2110
2111 ALTER TABLE raid_targets OWNER TO ndawn;
2112
2113 --
2114 -- Name: raid_targets_id_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
2115 --
2116
2117 CREATE SEQUENCE raid_targets_id_seq
2118     START WITH 1
2119     INCREMENT BY 1
2120     NO MINVALUE
2121     NO MAXVALUE
2122     CACHE 1;
2123
2124
2125 ALTER TABLE raid_targets_id_seq OWNER TO ndawn;
2126
2127 --
2128 -- Name: raid_targets_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
2129 --
2130
2131 ALTER SEQUENCE raid_targets_id_seq OWNED BY raid_targets.id;
2132
2133
2134 --
2135 -- Name: raids; Type: TABLE; Schema: public; Owner: ndawn
2136 --
2137
2138 CREATE TABLE raids (
2139     id integer NOT NULL,
2140     tick integer NOT NULL,
2141     open boolean DEFAULT false NOT NULL,
2142     waves integer DEFAULT 3 NOT NULL,
2143     message text NOT NULL,
2144     removed boolean DEFAULT false NOT NULL,
2145     released_coords boolean DEFAULT false NOT NULL,
2146     ftid integer NOT NULL
2147 );
2148
2149
2150 ALTER TABLE raids OWNER TO ndawn;
2151
2152 --
2153 -- Name: raids_id_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
2154 --
2155
2156 CREATE SEQUENCE raids_id_seq
2157     START WITH 1
2158     INCREMENT BY 1
2159     NO MINVALUE
2160     NO MAXVALUE
2161     CACHE 1;
2162
2163
2164 ALTER TABLE raids_id_seq OWNER TO ndawn;
2165
2166 --
2167 -- Name: raids_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
2168 --
2169
2170 ALTER SEQUENCE raids_id_seq OWNED BY raids.id;
2171
2172
2173 --
2174 -- Name: roles; Type: TABLE; Schema: public; Owner: ndawn
2175 --
2176
2177 CREATE TABLE roles (
2178     role character varying(32) NOT NULL
2179 );
2180
2181
2182 ALTER TABLE roles OWNER TO ndawn;
2183
2184 --
2185 -- Name: scan_requests; Type: TABLE; Schema: public; Owner: ndawn
2186 --
2187
2188 CREATE TABLE scan_requests (
2189     id integer NOT NULL,
2190     uid integer NOT NULL,
2191     pid integer NOT NULL,
2192     type text NOT NULL,
2193     nick text NOT NULL,
2194     tick integer DEFAULT tick() NOT NULL,
2195     "time" timestamp with time zone DEFAULT now() NOT NULL,
2196     sent boolean DEFAULT false NOT NULL
2197 );
2198
2199
2200 ALTER TABLE scan_requests OWNER TO ndawn;
2201
2202 --
2203 -- Name: scan_requests_id_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
2204 --
2205
2206 CREATE SEQUENCE scan_requests_id_seq
2207     START WITH 1
2208     INCREMENT BY 1
2209     NO MINVALUE
2210     NO MAXVALUE
2211     CACHE 1;
2212
2213
2214 ALTER TABLE scan_requests_id_seq OWNER TO ndawn;
2215
2216 --
2217 -- Name: scan_requests_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
2218 --
2219
2220 ALTER SEQUENCE scan_requests_id_seq OWNED BY scan_requests.id;
2221
2222
2223 --
2224 -- Name: scans; Type: TABLE; Schema: public; Owner: ndawn
2225 --
2226
2227 CREATE TABLE scans (
2228     tick integer NOT NULL,
2229     scan_id text NOT NULL,
2230     pid integer,
2231     type text,
2232     uid integer DEFAULT '-1'::integer NOT NULL,
2233     groupscan boolean DEFAULT false NOT NULL,
2234     parsed boolean DEFAULT false NOT NULL,
2235     id integer NOT NULL
2236 );
2237
2238
2239 ALTER TABLE scans OWNER TO ndawn;
2240
2241 --
2242 -- Name: scans_id_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
2243 --
2244
2245 CREATE SEQUENCE scans_id_seq
2246     START WITH 1
2247     INCREMENT BY 1
2248     NO MINVALUE
2249     NO MAXVALUE
2250     CACHE 1;
2251
2252
2253 ALTER TABLE scans_id_seq OWNER TO ndawn;
2254
2255 --
2256 -- Name: scans_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
2257 --
2258
2259 ALTER SEQUENCE scans_id_seq OWNED BY scans.id;
2260
2261
2262 --
2263 -- Name: session_log; Type: TABLE; Schema: public; Owner: ndawn
2264 --
2265
2266 CREATE TABLE session_log (
2267     uid integer NOT NULL,
2268     "time" timestamp with time zone NOT NULL,
2269     ip inet NOT NULL,
2270     country character(2) NOT NULL,
2271     session text NOT NULL,
2272     remember boolean NOT NULL
2273 );
2274
2275
2276 ALTER TABLE session_log OWNER TO ndawn;
2277
2278 --
2279 -- Name: ship_stats_id_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
2280 --
2281
2282 CREATE SEQUENCE ship_stats_id_seq
2283     START WITH 0
2284     INCREMENT BY 1
2285     MINVALUE 0
2286     NO MAXVALUE
2287     CACHE 1;
2288
2289
2290 ALTER TABLE ship_stats_id_seq OWNER TO ndawn;
2291
2292 --
2293 -- Name: ship_stats_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
2294 --
2295
2296 ALTER SEQUENCE ship_stats_id_seq OWNED BY ship_stats.id;
2297
2298
2299 --
2300 -- Name: sms; Type: TABLE; Schema: public; Owner: ndawn
2301 --
2302
2303 CREATE TABLE sms (
2304     id integer NOT NULL,
2305     msgid text,
2306     uid integer NOT NULL,
2307     status text DEFAULT 'Waiting'::text NOT NULL,
2308     number text NOT NULL,
2309     message character varying(140) NOT NULL,
2310     cost numeric(4,2) DEFAULT 0 NOT NULL,
2311     "time" timestamp with time zone DEFAULT now() NOT NULL
2312 );
2313
2314
2315 ALTER TABLE sms OWNER TO ndawn;
2316
2317 --
2318 -- Name: sms_id_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
2319 --
2320
2321 CREATE SEQUENCE sms_id_seq
2322     START WITH 1
2323     INCREMENT BY 1
2324     NO MINVALUE
2325     NO MAXVALUE
2326     CACHE 1;
2327
2328
2329 ALTER TABLE sms_id_seq OWNER TO ndawn;
2330
2331 --
2332 -- Name: sms_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
2333 --
2334
2335 ALTER SEQUENCE sms_id_seq OWNED BY sms.id;
2336
2337
2338 --
2339 -- Name: smslist; Type: TABLE; Schema: public; Owner: ndawn
2340 --
2341
2342 CREATE TABLE smslist (
2343     nick text NOT NULL,
2344     sms text NOT NULL,
2345     info text
2346 );
2347
2348
2349 ALTER TABLE smslist OWNER TO ndawn;
2350
2351 --
2352 -- Name: table_updates; Type: VIEW; Schema: public; Owner: ndawn
2353 --
2354
2355 CREATE VIEW table_updates AS
2356  SELECT t.schemaname,
2357     t.relname,
2358     c.reloptions,
2359     t.n_tup_upd,
2360     t.n_tup_hot_upd,
2361         CASE
2362             WHEN (t.n_tup_upd > 0) THEN ((((t.n_tup_hot_upd)::numeric / (t.n_tup_upd)::numeric) * 100.0))::numeric(5,2)
2363             ELSE NULL::numeric
2364         END AS hot_ratio
2365    FROM (pg_stat_all_tables t
2366      JOIN (pg_class c
2367      JOIN pg_namespace n ON ((c.relnamespace = n.oid))) ON (((n.nspname = t.schemaname) AND (c.relname = t.relname) AND (t.n_tup_upd > 0))));
2368
2369
2370 ALTER TABLE table_updates OWNER TO ndawn;
2371
2372 --
2373 -- Name: users_uid_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
2374 --
2375
2376 CREATE SEQUENCE users_uid_seq
2377     START WITH 1
2378     INCREMENT BY 1
2379     NO MINVALUE
2380     NO MAXVALUE
2381     CACHE 1;
2382
2383
2384 ALTER TABLE users_uid_seq OWNER TO ndawn;
2385
2386 --
2387 -- Name: users_uid_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
2388 --
2389
2390 ALTER SEQUENCE users_uid_seq OWNED BY users.uid;
2391
2392
2393 --
2394 -- Name: wiki_namespace_access; Type: TABLE; Schema: public; Owner: ndawn
2395 --
2396
2397 CREATE TABLE wiki_namespace_access (
2398     namespace text NOT NULL,
2399     gid character(1) NOT NULL,
2400     edit boolean DEFAULT false NOT NULL,
2401     post boolean DEFAULT false NOT NULL,
2402     moderate boolean DEFAULT false NOT NULL
2403 );
2404
2405
2406 ALTER TABLE wiki_namespace_access OWNER TO ndawn;
2407
2408 --
2409 -- Name: wiki_namespaces; Type: TABLE; Schema: public; Owner: ndawn
2410 --
2411
2412 CREATE TABLE wiki_namespaces (
2413     namespace character varying(16) NOT NULL
2414 );
2415
2416
2417 ALTER TABLE wiki_namespaces OWNER TO ndawn;
2418
2419 --
2420 -- Name: wiki_page_access; Type: TABLE; Schema: public; Owner: ndawn
2421 --
2422
2423 CREATE TABLE wiki_page_access (
2424     wpid integer NOT NULL,
2425     uid integer NOT NULL,
2426     edit boolean DEFAULT false NOT NULL,
2427     moderate boolean DEFAULT false NOT NULL
2428 );
2429
2430
2431 ALTER TABLE wiki_page_access OWNER TO ndawn;
2432
2433 --
2434 -- Name: wiki_page_revisions; Type: TABLE; Schema: public; Owner: ndawn
2435 --
2436
2437 CREATE TABLE wiki_page_revisions (
2438     wpid integer,
2439     wprev integer NOT NULL,
2440     parent integer,
2441     text text NOT NULL,
2442     comment text NOT NULL,
2443     "time" timestamp with time zone DEFAULT now() NOT NULL,
2444     uid integer
2445 );
2446
2447
2448 ALTER TABLE wiki_page_revisions OWNER TO ndawn;
2449
2450 --
2451 -- Name: wiki_page_revisions_wprev_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
2452 --
2453
2454 CREATE SEQUENCE wiki_page_revisions_wprev_seq
2455     START WITH 1
2456     INCREMENT BY 1
2457     NO MINVALUE
2458     NO MAXVALUE
2459     CACHE 1;
2460
2461
2462 ALTER TABLE wiki_page_revisions_wprev_seq OWNER TO ndawn;
2463
2464 --
2465 -- Name: wiki_page_revisions_wprev_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
2466 --
2467
2468 ALTER SEQUENCE wiki_page_revisions_wprev_seq OWNED BY wiki_page_revisions.wprev;
2469
2470
2471 --
2472 -- Name: wiki_pages; Type: TABLE; Schema: public; Owner: ndawn
2473 --
2474
2475 CREATE TABLE wiki_pages (
2476     wpid integer NOT NULL,
2477     name character varying(255) NOT NULL,
2478     namespace text DEFAULT ''::text NOT NULL,
2479     textsearch tsvector DEFAULT to_tsvector(''::text) NOT NULL,
2480     wprev integer,
2481     "time" timestamp with time zone DEFAULT now() NOT NULL
2482 );
2483
2484
2485 ALTER TABLE wiki_pages OWNER TO ndawn;
2486
2487 --
2488 -- Name: wiki_pages_wpid_seq; Type: SEQUENCE; Schema: public; Owner: ndawn
2489 --
2490
2491 CREATE SEQUENCE wiki_pages_wpid_seq
2492     START WITH 1
2493     INCREMENT BY 1
2494     NO MINVALUE
2495     NO MAXVALUE
2496     CACHE 1;
2497
2498
2499 ALTER TABLE wiki_pages_wpid_seq OWNER TO ndawn;
2500
2501 --
2502 -- Name: wiki_pages_wpid_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: ndawn
2503 --
2504
2505 ALTER SEQUENCE wiki_pages_wpid_seq OWNED BY wiki_pages.wpid;
2506
2507
2508 --
2509 -- Name: aid; Type: DEFAULT; Schema: public; Owner: ndawn
2510 --
2511
2512 ALTER TABLE ONLY alliances ALTER COLUMN aid SET DEFAULT nextval('alliances_id_seq'::regclass);
2513
2514
2515 --
2516 -- Name: call; Type: DEFAULT; Schema: public; Owner: ndawn
2517 --
2518
2519 ALTER TABLE ONLY calls ALTER COLUMN call SET DEFAULT nextval('calls_id_seq'::regclass);
2520
2521
2522 --
2523 -- Name: num; Type: DEFAULT; Schema: public; Owner: ndawn
2524 --
2525
2526 ALTER TABLE ONLY fleet_ships ALTER COLUMN num SET DEFAULT nextval('fleet_ships_num_seq'::regclass);
2527
2528
2529 --
2530 -- Name: fid; Type: DEFAULT; Schema: public; Owner: ndawn
2531 --
2532
2533 ALTER TABLE ONLY fleets ALTER COLUMN fid SET DEFAULT nextval('fleets_id_seq'::regclass);
2534
2535
2536 --
2537 -- Name: fbid; Type: DEFAULT; Schema: public; Owner: ndawn
2538 --
2539
2540 ALTER TABLE ONLY forum_boards ALTER COLUMN fbid SET DEFAULT nextval('forum_boards_fbid_seq'::regclass);
2541
2542
2543 --
2544 -- Name: fcid; Type: DEFAULT; Schema: public; Owner: ndawn
2545 --
2546
2547 ALTER TABLE ONLY forum_categories ALTER COLUMN fcid SET DEFAULT nextval('forum_categories_fcid_seq'::regclass);
2548
2549
2550 --
2551 -- Name: fpid; Type: DEFAULT; Schema: public; Owner: ndawn
2552 --
2553
2554 ALTER TABLE ONLY forum_posts ALTER COLUMN fpid SET DEFAULT nextval('forum_posts_fpid_seq'::regclass);
2555
2556
2557 --
2558 -- Name: ftid; Type: DEFAULT; Schema: public; Owner: ndawn
2559 --
2560
2561 ALTER TABLE ONLY forum_threads ALTER COLUMN ftid SET DEFAULT nextval('forum_threads_ftid_seq'::regclass);
2562
2563
2564 --
2565 -- Name: inc; Type: DEFAULT; Schema: public; Owner: ndawn
2566 --
2567
2568 ALTER TABLE ONLY incomings ALTER COLUMN inc SET DEFAULT nextval('incomings_id_seq'::regclass);
2569
2570
2571 --
2572 -- Name: id; Type: DEFAULT; Schema: public; Owner: ndawn
2573 --
2574
2575 ALTER TABLE ONLY intel ALTER COLUMN id SET DEFAULT nextval('intel_id_seq'::regclass);
2576
2577
2578 --
2579 -- Name: id; Type: DEFAULT; Schema: public; Owner: ndawn
2580 --
2581
2582 ALTER TABLE ONLY irc_requests ALTER COLUMN id SET DEFAULT nextval('irc_requests_id_seq'::regclass);
2583
2584
2585 --
2586 -- Name: pid; Type: DEFAULT; Schema: public; Owner: ndawn
2587 --
2588
2589 ALTER TABLE ONLY planets ALTER COLUMN pid SET DEFAULT nextval('planets_id_seq'::regclass);
2590
2591
2592 --
2593 -- Name: id; Type: DEFAULT; Schema: public; Owner: ndawn
2594 --
2595
2596 ALTER TABLE ONLY raid_targets ALTER COLUMN id SET DEFAULT nextval('raid_targets_id_seq'::regclass);
2597
2598
2599 --
2600 -- Name: id; Type: DEFAULT; Schema: public; Owner: ndawn
2601 --
2602
2603 ALTER TABLE ONLY raids ALTER COLUMN id SET DEFAULT nextval('raids_id_seq'::regclass);
2604
2605
2606 --
2607 -- Name: id; Type: DEFAULT; Schema: public; Owner: ndawn
2608 --
2609
2610 ALTER TABLE ONLY scan_requests ALTER COLUMN id SET DEFAULT nextval('scan_requests_id_seq'::regclass);
2611
2612
2613 --
2614 -- Name: id; Type: DEFAULT; Schema: public; Owner: ndawn
2615 --
2616
2617 ALTER TABLE ONLY scans ALTER COLUMN id SET DEFAULT nextval('scans_id_seq'::regclass);
2618
2619
2620 --
2621 -- Name: id; Type: DEFAULT; Schema: public; Owner: ndawn
2622 --
2623
2624 ALTER TABLE ONLY ship_stats ALTER COLUMN id SET DEFAULT nextval('ship_stats_id_seq'::regclass);
2625
2626
2627 --
2628 -- Name: id; Type: DEFAULT; Schema: public; Owner: ndawn
2629 --
2630
2631 ALTER TABLE ONLY sms ALTER COLUMN id SET DEFAULT nextval('sms_id_seq'::regclass);
2632
2633
2634 --
2635 -- Name: uid; Type: DEFAULT; Schema: public; Owner: ndawn
2636 --
2637
2638 ALTER TABLE ONLY users ALTER COLUMN uid SET DEFAULT nextval('users_uid_seq'::regclass);
2639
2640
2641 --
2642 -- Name: wprev; Type: DEFAULT; Schema: public; Owner: ndawn
2643 --
2644
2645 ALTER TABLE ONLY wiki_page_revisions ALTER COLUMN wprev SET DEFAULT nextval('wiki_page_revisions_wprev_seq'::regclass);
2646
2647
2648 --
2649 -- Name: wpid; Type: DEFAULT; Schema: public; Owner: ndawn
2650 --
2651
2652 ALTER TABLE ONLY wiki_pages ALTER COLUMN wpid SET DEFAULT nextval('wiki_pages_wpid_seq'::regclass);
2653
2654
2655 --
2656 -- Name: accounts_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2657 --
2658
2659 ALTER TABLE ONLY users
2660     ADD CONSTRAINT accounts_pkey PRIMARY KEY (uid);
2661
2662
2663 --
2664 -- Name: alliance_stats_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2665 --
2666
2667 ALTER TABLE ONLY alliance_stats
2668     ADD CONSTRAINT alliance_stats_pkey PRIMARY KEY (aid, tick);
2669
2670
2671 --
2672 -- Name: alliances_name_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
2673 --
2674
2675 ALTER TABLE ONLY alliances
2676     ADD CONSTRAINT alliances_name_key UNIQUE (alliance);
2677
2678
2679 --
2680 -- Name: alliances_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2681 --
2682
2683 ALTER TABLE ONLY alliances
2684     ADD CONSTRAINT alliances_pkey PRIMARY KEY (aid);
2685
2686
2687 --
2688 -- Name: available_planet_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2689 --
2690
2691 ALTER TABLE ONLY available_planet_tags
2692     ADD CONSTRAINT available_planet_tags_pkey PRIMARY KEY (tag);
2693
2694
2695 --
2696 -- Name: call_statuses_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2697 --
2698
2699 ALTER TABLE ONLY call_statuses
2700     ADD CONSTRAINT call_statuses_pkey PRIMARY KEY (status);
2701
2702
2703 --
2704 -- Name: calls_member_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
2705 --
2706
2707 ALTER TABLE ONLY calls
2708     ADD CONSTRAINT calls_member_key UNIQUE (uid, landing_tick);
2709
2710
2711 --
2712 -- Name: calls_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2713 --
2714
2715 ALTER TABLE ONLY calls
2716     ADD CONSTRAINT calls_pkey PRIMARY KEY (call);
2717
2718
2719 --
2720 -- Name: channel_flags_name_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
2721 --
2722
2723 ALTER TABLE ONLY channel_flags
2724     ADD CONSTRAINT channel_flags_name_key UNIQUE (name);
2725
2726
2727 --
2728 -- Name: channel_flags_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2729 --
2730
2731 ALTER TABLE ONLY channel_flags
2732     ADD CONSTRAINT channel_flags_pkey PRIMARY KEY (flag);
2733
2734
2735 --
2736 -- Name: channel_group_flags_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2737 --
2738
2739 ALTER TABLE ONLY channel_group_flags
2740     ADD CONSTRAINT channel_group_flags_pkey PRIMARY KEY (channel, gid, flag);
2741
2742
2743 --
2744 -- Name: channels_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2745 --
2746
2747 ALTER TABLE ONLY channels
2748     ADD CONSTRAINT channels_pkey PRIMARY KEY (channel);
2749
2750
2751 --
2752 -- Name: clickatell_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2753 --
2754
2755 ALTER TABLE ONLY clickatell
2756     ADD CONSTRAINT clickatell_pkey PRIMARY KEY (api_id, username);
2757
2758
2759 --
2760 -- Name: covop_attacks_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2761 --
2762
2763 ALTER TABLE ONLY covop_attacks
2764     ADD CONSTRAINT covop_attacks_pkey PRIMARY KEY (pid, tick, uid);
2765
2766
2767 --
2768 -- Name: defense_missions_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2769 --
2770
2771 ALTER TABLE ONLY defense_missions
2772     ADD CONSTRAINT defense_missions_pkey PRIMARY KEY (fleet);
2773
2774
2775 --
2776 -- Name: development_scans_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2777 --
2778
2779 ALTER TABLE ONLY development_scans
2780     ADD CONSTRAINT development_scans_pkey PRIMARY KEY (id);
2781
2782
2783 --
2784 -- Name: dumps_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2785 --
2786
2787 ALTER TABLE ONLY dumps
2788     ADD CONSTRAINT dumps_pkey PRIMARY KEY (tick, type, modified);
2789
2790
2791 --
2792 -- Name: email_change_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2793 --
2794
2795 ALTER TABLE ONLY email_change
2796     ADD CONSTRAINT email_change_pkey PRIMARY KEY (id);
2797
2798
2799 --
2800 -- Name: fleet_scans_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2801 --
2802
2803 ALTER TABLE ONLY fleet_scans
2804     ADD CONSTRAINT fleet_scans_pkey PRIMARY KEY (fid);
2805
2806
2807 --
2808 -- Name: fleet_ships_num_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
2809 --
2810
2811 ALTER TABLE ONLY fleet_ships
2812     ADD CONSTRAINT fleet_ships_num_key UNIQUE (num);
2813
2814
2815 --
2816 -- Name: fleet_ships_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2817 --
2818
2819 ALTER TABLE ONLY fleet_ships
2820     ADD CONSTRAINT fleet_ships_pkey PRIMARY KEY (fid, ship);
2821
2822
2823 --
2824 -- Name: fleets_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2825 --
2826
2827 ALTER TABLE ONLY fleets
2828     ADD CONSTRAINT fleets_pkey PRIMARY KEY (fid);
2829
2830
2831 --
2832 -- Name: forum_access_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2833 --
2834
2835 ALTER TABLE ONLY forum_access
2836     ADD CONSTRAINT forum_access_pkey PRIMARY KEY (fbid, gid);
2837
2838
2839 --
2840 -- Name: forum_boards_fcid_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
2841 --
2842
2843 ALTER TABLE ONLY forum_boards
2844     ADD CONSTRAINT forum_boards_fcid_key UNIQUE (fcid, board);
2845
2846
2847 --
2848 -- Name: forum_boards_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2849 --
2850
2851 ALTER TABLE ONLY forum_boards
2852     ADD CONSTRAINT forum_boards_pkey PRIMARY KEY (fbid);
2853
2854
2855 --
2856 -- Name: forum_categories_category_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
2857 --
2858
2859 ALTER TABLE ONLY forum_categories
2860     ADD CONSTRAINT forum_categories_category_key UNIQUE (category);
2861
2862
2863 --
2864 -- Name: forum_categories_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2865 --
2866
2867 ALTER TABLE ONLY forum_categories
2868     ADD CONSTRAINT forum_categories_pkey PRIMARY KEY (fcid);
2869
2870
2871 --
2872 -- Name: forum_posts_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2873 --
2874
2875 ALTER TABLE ONLY forum_posts
2876     ADD CONSTRAINT forum_posts_pkey PRIMARY KEY (fpid);
2877
2878
2879 --
2880 -- Name: forum_priv_access_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2881 --
2882
2883 ALTER TABLE ONLY forum_priv_access
2884     ADD CONSTRAINT forum_priv_access_pkey PRIMARY KEY (uid, ftid);
2885
2886
2887 --
2888 -- Name: forum_thread_visits_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2889 --
2890
2891 ALTER TABLE ONLY forum_thread_visits
2892     ADD CONSTRAINT forum_thread_visits_pkey PRIMARY KEY (uid, ftid);
2893
2894
2895 --
2896 -- Name: forum_threads_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2897 --
2898
2899 ALTER TABLE ONLY forum_threads
2900     ADD CONSTRAINT forum_threads_pkey PRIMARY KEY (ftid);
2901
2902
2903 --
2904 -- Name: full_fleets_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2905 --
2906
2907 ALTER TABLE ONLY full_fleets
2908     ADD CONSTRAINT full_fleets_pkey PRIMARY KEY (fid);
2909
2910
2911 --
2912 -- Name: galaxies_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2913 --
2914
2915 ALTER TABLE ONLY galaxies
2916     ADD CONSTRAINT galaxies_pkey PRIMARY KEY (tick, x, y);
2917
2918
2919 --
2920 -- Name: group_roles_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2921 --
2922
2923 ALTER TABLE ONLY group_roles
2924     ADD CONSTRAINT group_roles_pkey PRIMARY KEY (gid, role);
2925
2926
2927 --
2928 -- Name: groupmembers_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2929 --
2930
2931 ALTER TABLE ONLY groupmembers
2932     ADD CONSTRAINT groupmembers_pkey PRIMARY KEY (gid, uid);
2933
2934
2935 --
2936 -- Name: groups_groupname_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
2937 --
2938
2939 ALTER TABLE ONLY groups
2940     ADD CONSTRAINT groups_groupname_key UNIQUE (groupname);
2941
2942
2943 --
2944 -- Name: groups_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2945 --
2946
2947 ALTER TABLE ONLY groups
2948     ADD CONSTRAINT groups_pkey PRIMARY KEY (gid);
2949
2950
2951 --
2952 -- Name: incomings_call_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
2953 --
2954
2955 ALTER TABLE ONLY incomings
2956     ADD CONSTRAINT incomings_call_key UNIQUE (call, pid, fleet);
2957
2958
2959 --
2960 -- Name: incomings_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2961 --
2962
2963 ALTER TABLE ONLY incomings
2964     ADD CONSTRAINT incomings_pkey PRIMARY KEY (inc);
2965
2966
2967 --
2968 -- Name: intel_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2969 --
2970
2971 ALTER TABLE ONLY intel
2972     ADD CONSTRAINT intel_pkey PRIMARY KEY (id);
2973
2974
2975 --
2976 -- Name: intel_scans_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2977 --
2978
2979 ALTER TABLE ONLY intel_scans
2980     ADD CONSTRAINT intel_scans_pkey PRIMARY KEY (id, intel);
2981
2982
2983 --
2984 -- Name: irc_requests_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2985 --
2986
2987 ALTER TABLE ONLY irc_requests
2988     ADD CONSTRAINT irc_requests_pkey PRIMARY KEY (id);
2989
2990
2991 --
2992 -- Name: last_smokes_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
2993 --
2994
2995 ALTER TABLE ONLY last_smokes
2996     ADD CONSTRAINT last_smokes_pkey PRIMARY KEY (nick);
2997
2998
2999 --
3000 -- Name: launch_confirmations_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3001 --
3002
3003 ALTER TABLE ONLY launch_confirmations
3004     ADD CONSTRAINT launch_confirmations_pkey PRIMARY KEY (fid);
3005
3006
3007 --
3008 -- Name: misc_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3009 --
3010
3011 ALTER TABLE ONLY misc
3012     ADD CONSTRAINT misc_pkey PRIMARY KEY (id);
3013
3014
3015 --
3016 -- Name: planet_scans_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3017 --
3018
3019 ALTER TABLE ONLY planet_scans
3020     ADD CONSTRAINT planet_scans_pkey PRIMARY KEY (id);
3021
3022
3023 --
3024 -- Name: planet_stats_id_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
3025 --
3026
3027 ALTER TABLE ONLY planet_stats
3028     ADD CONSTRAINT planet_stats_id_key UNIQUE (pid, tick);
3029
3030
3031 --
3032 -- Name: planet_stats_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3033 --
3034
3035 ALTER TABLE ONLY planet_stats
3036     ADD CONSTRAINT planet_stats_pkey PRIMARY KEY (tick, x, y, z);
3037
3038
3039 --
3040 -- Name: planet_tags_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3041 --
3042
3043 ALTER TABLE ONLY planet_tags
3044     ADD CONSTRAINT planet_tags_pkey PRIMARY KEY (pid, uid, tag);
3045
3046
3047 --
3048 -- Name: planets_ftid_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
3049 --
3050
3051 ALTER TABLE ONLY planets
3052     ADD CONSTRAINT planets_ftid_key UNIQUE (ftid);
3053
3054
3055 --
3056 -- Name: planets_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3057 --
3058
3059 ALTER TABLE ONLY planets
3060     ADD CONSTRAINT planets_pkey PRIMARY KEY (pid);
3061
3062
3063 --
3064 -- Name: planets_ruler_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
3065 --
3066
3067 ALTER TABLE ONLY planets
3068     ADD CONSTRAINT planets_ruler_key UNIQUE (ruler, planet);
3069
3070
3071 --
3072 -- Name: raid_access_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3073 --
3074
3075 ALTER TABLE ONLY raid_access
3076     ADD CONSTRAINT raid_access_pkey PRIMARY KEY (raid, gid);
3077
3078
3079 --
3080 -- Name: raid_claims_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3081 --
3082
3083 ALTER TABLE ONLY raid_claims
3084     ADD CONSTRAINT raid_claims_pkey PRIMARY KEY (target, uid, wave);
3085
3086
3087 --
3088 -- Name: raid_targets_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3089 --
3090
3091 ALTER TABLE ONLY raid_targets
3092     ADD CONSTRAINT raid_targets_pkey PRIMARY KEY (id);
3093
3094
3095 --
3096 -- Name: raid_targets_raid_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
3097 --
3098
3099 ALTER TABLE ONLY raid_targets
3100     ADD CONSTRAINT raid_targets_raid_key UNIQUE (raid, pid);
3101
3102
3103 --
3104 -- Name: raids_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3105 --
3106
3107 ALTER TABLE ONLY raids
3108     ADD CONSTRAINT raids_pkey PRIMARY KEY (id);
3109
3110
3111 --
3112 -- Name: roles_role_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
3113 --
3114
3115 ALTER TABLE ONLY roles
3116     ADD CONSTRAINT roles_role_key UNIQUE (role);
3117
3118
3119 --
3120 -- Name: scan_requests_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3121 --
3122
3123 ALTER TABLE ONLY scan_requests
3124     ADD CONSTRAINT scan_requests_pkey PRIMARY KEY (id);
3125
3126
3127 --
3128 -- Name: scan_requests_tick_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
3129 --
3130
3131 ALTER TABLE ONLY scan_requests
3132     ADD CONSTRAINT scan_requests_tick_key UNIQUE (tick, pid, type, uid);
3133
3134
3135 --
3136 -- Name: scans_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3137 --
3138
3139 ALTER TABLE ONLY scans
3140     ADD CONSTRAINT scans_pkey PRIMARY KEY (id);
3141
3142
3143 --
3144 -- Name: scans_scan_id_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
3145 --
3146
3147 ALTER TABLE ONLY scans
3148     ADD CONSTRAINT scans_scan_id_key UNIQUE (scan_id, tick, groupscan);
3149
3150
3151 --
3152 -- Name: session_log_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3153 --
3154
3155 ALTER TABLE ONLY session_log
3156     ADD CONSTRAINT session_log_pkey PRIMARY KEY (uid, "time", ip);
3157
3158
3159 --
3160 -- Name: ship_stats_id_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
3161 --
3162
3163 ALTER TABLE ONLY ship_stats
3164     ADD CONSTRAINT ship_stats_id_key UNIQUE (id);
3165
3166 ALTER TABLE ship_stats CLUSTER ON ship_stats_id_key;
3167
3168
3169 --
3170 -- Name: ship_stats_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3171 --
3172
3173 ALTER TABLE ONLY ship_stats
3174     ADD CONSTRAINT ship_stats_pkey PRIMARY KEY (ship);
3175
3176
3177 --
3178 -- Name: sms_msgid_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
3179 --
3180
3181 ALTER TABLE ONLY sms
3182     ADD CONSTRAINT sms_msgid_key UNIQUE (msgid);
3183
3184
3185 --
3186 -- Name: sms_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3187 --
3188
3189 ALTER TABLE ONLY sms
3190     ADD CONSTRAINT sms_pkey PRIMARY KEY (id);
3191
3192
3193 --
3194 -- Name: smslist_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3195 --
3196
3197 ALTER TABLE ONLY smslist
3198     ADD CONSTRAINT smslist_pkey PRIMARY KEY (sms);
3199
3200
3201 --
3202 -- Name: ticks_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3203 --
3204
3205 ALTER TABLE ONLY ticks
3206     ADD CONSTRAINT ticks_pkey PRIMARY KEY (t);
3207
3208
3209 --
3210 -- Name: users_hostmask_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
3211 --
3212
3213 ALTER TABLE ONLY users
3214     ADD CONSTRAINT users_hostmask_key UNIQUE (hostmask);
3215
3216
3217 --
3218 -- Name: users_planet_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
3219 --
3220
3221 ALTER TABLE ONLY users
3222     ADD CONSTRAINT users_planet_key UNIQUE (pid);
3223
3224
3225 --
3226 -- Name: users_pnick_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
3227 --
3228
3229 ALTER TABLE ONLY users
3230     ADD CONSTRAINT users_pnick_key UNIQUE (pnick);
3231
3232
3233 --
3234 -- Name: users_tfid_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
3235 --
3236
3237 ALTER TABLE ONLY users
3238     ADD CONSTRAINT users_tfid_key UNIQUE (ftid);
3239
3240
3241 --
3242 -- Name: users_username_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
3243 --
3244
3245 ALTER TABLE ONLY users
3246     ADD CONSTRAINT users_username_key UNIQUE (username);
3247
3248
3249 --
3250 -- Name: wiki_namespace_access_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3251 --
3252
3253 ALTER TABLE ONLY wiki_namespace_access
3254     ADD CONSTRAINT wiki_namespace_access_pkey PRIMARY KEY (gid, namespace);
3255
3256
3257 --
3258 -- Name: wiki_namespaces_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3259 --
3260
3261 ALTER TABLE ONLY wiki_namespaces
3262     ADD CONSTRAINT wiki_namespaces_pkey PRIMARY KEY (namespace);
3263
3264
3265 --
3266 -- Name: wiki_page_access_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3267 --
3268
3269 ALTER TABLE ONLY wiki_page_access
3270     ADD CONSTRAINT wiki_page_access_pkey PRIMARY KEY (uid, wpid);
3271
3272
3273 --
3274 -- Name: wiki_page_revisions_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3275 --
3276
3277 ALTER TABLE ONLY wiki_page_revisions
3278     ADD CONSTRAINT wiki_page_revisions_pkey PRIMARY KEY (wprev);
3279
3280
3281 --
3282 -- Name: wiki_pages_namespace_key; Type: CONSTRAINT; Schema: public; Owner: ndawn
3283 --
3284
3285 ALTER TABLE ONLY wiki_pages
3286     ADD CONSTRAINT wiki_pages_namespace_key UNIQUE (namespace, name);
3287
3288
3289 --
3290 -- Name: wiki_pages_pkey; Type: CONSTRAINT; Schema: public; Owner: ndawn
3291 --
3292
3293 ALTER TABLE ONLY wiki_pages
3294     ADD CONSTRAINT wiki_pages_pkey PRIMARY KEY (wpid);
3295
3296
3297 --
3298 -- Name: development_scans_planet_index; Type: INDEX; Schema: public; Owner: ndawn
3299 --
3300
3301 CREATE INDEX development_scans_planet_index ON development_scans USING btree (pid, tick);
3302
3303
3304 --
3305 -- Name: fleets_sender_index; Type: INDEX; Schema: public; Owner: ndawn
3306 --
3307
3308 CREATE INDEX fleets_sender_index ON fleets USING btree (pid);
3309
3310
3311 --
3312 -- Name: forum_posts_ftid_index; Type: INDEX; Schema: public; Owner: ndawn
3313 --
3314
3315 CREATE INDEX forum_posts_ftid_index ON forum_posts USING btree (ftid);
3316
3317
3318 --
3319 -- Name: forum_posts_textsearch_index; Type: INDEX; Schema: public; Owner: ndawn
3320 --
3321
3322 CREATE INDEX forum_posts_textsearch_index ON forum_posts USING gin (textsearch);
3323
3324
3325 --
3326 -- Name: groupmembers_uid_key; Type: INDEX; Schema: public; Owner: ndawn
3327 --
3328
3329 CREATE INDEX groupmembers_uid_key ON groupmembers USING btree (uid);
3330
3331
3332 --
3333 -- Name: intel_tick_index; Type: INDEX; Schema: public; Owner: ndawn
3334 --
3335
3336 CREATE INDEX intel_tick_index ON intel USING btree (tick);
3337
3338
3339 --
3340 -- Name: planet_scans_planet_index; Type: INDEX; Schema: public; Owner: ndawn
3341 --
3342
3343 CREATE INDEX planet_scans_planet_index ON planet_scans USING btree (pid, tick);
3344
3345
3346 --
3347 -- Name: planet_stats_scorerank_index; Type: INDEX; Schema: public; Owner: ndawn
3348 --
3349
3350 CREATE INDEX planet_stats_scorerank_index ON planet_stats USING btree (tick, scorerank);
3351
3352
3353 --
3354 -- Name: planet_stats_sizerank_index; Type: INDEX; Schema: public; Owner: ndawn
3355 --
3356
3357 CREATE INDEX planet_stats_sizerank_index ON planet_stats USING btree (tick, sizerank);
3358
3359
3360 --
3361 -- Name: planet_stats_valuerank_index; Type: INDEX; Schema: public; Owner: ndawn
3362 --
3363
3364 CREATE INDEX planet_stats_valuerank_index ON planet_stats USING btree (tick, valuerank);
3365
3366
3367 --
3368 -- Name: planet_stats_xprank_index; Type: INDEX; Schema: public; Owner: ndawn
3369 --
3370
3371 CREATE INDEX planet_stats_xprank_index ON planet_stats USING btree (tick, xprank);
3372
3373
3374 --
3375 -- Name: planets_alliance_id_index; Type: INDEX; Schema: public; Owner: ndawn
3376 --
3377
3378 CREATE INDEX planets_alliance_id_index ON planets USING btree (alliance);
3379
3380
3381 --
3382 -- Name: scan_requests_time_not_sent_index; Type: INDEX; Schema: public; Owner: ndawn
3383 --
3384
3385 CREATE INDEX scan_requests_time_not_sent_index ON scan_requests USING btree ("time") WHERE (NOT sent);
3386
3387
3388 --
3389 -- Name: scans_not_parsed_index; Type: INDEX; Schema: public; Owner: ndawn
3390 --
3391
3392 CREATE INDEX scans_not_parsed_index ON scans USING btree (groupscan) WHERE (NOT parsed);
3393
3394
3395 --
3396 -- Name: scans_planet_index; Type: INDEX; Schema: public; Owner: ndawn
3397 --
3398
3399 CREATE INDEX scans_planet_index ON scans USING btree (pid, type, tick);
3400
3401
3402 --
3403 -- Name: sms_status_msgid_idx; Type: INDEX; Schema: public; Owner: ndawn
3404 --
3405
3406 CREATE INDEX sms_status_msgid_idx ON sms USING btree (status) WHERE (msgid IS NULL);
3407
3408
3409 --
3410 -- Name: smslist_nick_key; Type: INDEX; Schema: public; Owner: ndawn
3411 --
3412
3413 CREATE UNIQUE INDEX smslist_nick_key ON smslist USING btree (lower(nick));
3414
3415
3416 --
3417 -- Name: users_birthday_index; Type: INDEX; Schema: public; Owner: ndawn
3418 --
3419
3420 CREATE INDEX users_birthday_index ON users USING btree (mmdd(birthday)) WHERE (birthday IS NOT NULL);
3421
3422
3423 --
3424 -- Name: wiki_pages_textsearch_index; Type: INDEX; Schema: public; Owner: ndawn
3425 --
3426
3427 CREATE INDEX wiki_pages_textsearch_index ON wiki_pages USING gin (textsearch);
3428
3429
3430 --
3431 -- Name: add_call; Type: TRIGGER; Schema: public; Owner: ndawn
3432 --
3433
3434 CREATE TRIGGER add_call BEFORE INSERT ON calls FOR EACH ROW EXECUTE PROCEDURE add_call();
3435
3436
3437 --
3438 -- Name: add_raid; Type: TRIGGER; Schema: public; Owner: ndawn
3439 --
3440
3441 CREATE TRIGGER add_raid BEFORE INSERT ON raids FOR EACH ROW EXECUTE PROCEDURE add_raid();
3442
3443
3444 --
3445 -- Name: add_remove_member; Type: TRIGGER; Schema: public; Owner: ndawn
3446 --
3447
3448 CREATE TRIGGER add_remove_member AFTER INSERT OR DELETE ON groupmembers FOR EACH ROW EXECUTE PROCEDURE change_member();
3449
3450
3451 --
3452 -- Name: add_user; Type: TRIGGER; Schema: public; Owner: ndawn
3453 --
3454
3455 CREATE TRIGGER add_user BEFORE INSERT ON users FOR EACH ROW EXECUTE PROCEDURE add_user();
3456
3457
3458 --
3459 -- Name: update_forum_post; Type: TRIGGER; Schema: public; Owner: ndawn
3460 --
3461
3462 CREATE TRIGGER update_forum_post BEFORE INSERT OR UPDATE ON forum_posts FOR EACH ROW EXECUTE PROCEDURE update_forum_post();
3463
3464
3465 --
3466 -- Name: update_forum_thread_posts; Type: TRIGGER; Schema: public; Owner: ndawn
3467 --
3468
3469 CREATE TRIGGER update_forum_thread_posts AFTER INSERT OR DELETE OR UPDATE ON forum_posts FOR EACH ROW EXECUTE PROCEDURE update_forum_thread_posts();
3470
3471
3472 --
3473 -- Name: update_planet; Type: TRIGGER; Schema: public; Owner: ndawn
3474 --
3475
3476 CREATE TRIGGER update_planet AFTER UPDATE ON users FOR EACH ROW EXECUTE PROCEDURE update_user_planet();
3477
3478
3479 --
3480 -- Name: update_wiki_page; Type: TRIGGER; Schema: public; Owner: ndawn
3481 --
3482
3483 CREATE TRIGGER update_wiki_page BEFORE UPDATE ON wiki_pages FOR EACH ROW EXECUTE PROCEDURE update_wiki_page();
3484
3485
3486 --
3487 -- Name: updated_claim; Type: TRIGGER; Schema: public; Owner: ndawn
3488 --
3489
3490 CREATE TRIGGER updated_claim AFTER INSERT OR DELETE OR UPDATE ON raid_claims FOR EACH ROW EXECUTE PROCEDURE updated_claim();
3491
3492
3493 --
3494 -- Name: alliance_stats_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3495 --
3496
3497 ALTER TABLE ONLY alliance_stats
3498     ADD CONSTRAINT alliance_stats_id_fkey FOREIGN KEY (aid) REFERENCES alliances(aid);
3499
3500
3501 --
3502 -- Name: calls_dc_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3503 --
3504
3505 ALTER TABLE ONLY calls
3506     ADD CONSTRAINT calls_dc_fkey FOREIGN KEY (dc) REFERENCES users(uid) ON UPDATE SET NULL ON DELETE SET NULL;
3507
3508
3509 --
3510 -- Name: calls_ftid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3511 --
3512
3513 ALTER TABLE ONLY calls
3514     ADD CONSTRAINT calls_ftid_fkey FOREIGN KEY (ftid) REFERENCES forum_threads(ftid);
3515
3516
3517 --
3518 -- Name: calls_member_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3519 --
3520
3521 ALTER TABLE ONLY calls
3522     ADD CONSTRAINT calls_member_fkey FOREIGN KEY (uid) REFERENCES users(uid) ON UPDATE CASCADE ON DELETE CASCADE;
3523
3524
3525 --
3526 -- Name: calls_status_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3527 --
3528
3529 ALTER TABLE ONLY calls
3530     ADD CONSTRAINT calls_status_fkey FOREIGN KEY (status) REFERENCES call_statuses(status);
3531
3532
3533 --
3534 -- Name: channel_group_flags_channel_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3535 --
3536
3537 ALTER TABLE ONLY channel_group_flags
3538     ADD CONSTRAINT channel_group_flags_channel_fkey FOREIGN KEY (channel) REFERENCES channels(channel) ON UPDATE CASCADE ON DELETE CASCADE;
3539
3540
3541 --
3542 -- Name: channel_group_flags_flag_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3543 --
3544
3545 ALTER TABLE ONLY channel_group_flags
3546     ADD CONSTRAINT channel_group_flags_flag_fkey FOREIGN KEY (flag) REFERENCES channel_flags(flag) ON UPDATE CASCADE ON DELETE CASCADE;
3547
3548
3549 --
3550 -- Name: channel_group_flags_gid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3551 --
3552
3553 ALTER TABLE ONLY channel_group_flags
3554     ADD CONSTRAINT channel_group_flags_gid_fkey FOREIGN KEY (gid) REFERENCES groups(gid) ON UPDATE CASCADE ON DELETE CASCADE;
3555
3556
3557 --
3558 -- Name: covop_attacks_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3559 --
3560
3561 ALTER TABLE ONLY covop_attacks
3562     ADD CONSTRAINT covop_attacks_id_fkey FOREIGN KEY (pid) REFERENCES planets(pid);
3563
3564
3565 --
3566 -- Name: covop_attacks_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3567 --
3568
3569 ALTER TABLE ONLY covop_attacks
3570     ADD CONSTRAINT covop_attacks_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid);
3571
3572
3573 --
3574 -- Name: defense_missions_call_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3575 --
3576
3577 ALTER TABLE ONLY defense_missions
3578     ADD CONSTRAINT defense_missions_call_fkey FOREIGN KEY (call) REFERENCES calls(call) ON UPDATE CASCADE ON DELETE CASCADE;
3579
3580
3581 --
3582 -- Name: defense_missions_fleet_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3583 --
3584
3585 ALTER TABLE ONLY defense_missions
3586     ADD CONSTRAINT defense_missions_fleet_fkey FOREIGN KEY (fleet) REFERENCES fleets(fid) ON UPDATE CASCADE ON DELETE CASCADE;
3587
3588
3589 --
3590 -- Name: development_scans_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3591 --
3592
3593 ALTER TABLE ONLY development_scans
3594     ADD CONSTRAINT development_scans_id_fkey FOREIGN KEY (id) REFERENCES scans(id);
3595
3596
3597 --
3598 -- Name: development_scans_planet_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3599 --
3600
3601 ALTER TABLE ONLY development_scans
3602     ADD CONSTRAINT development_scans_planet_fkey FOREIGN KEY (pid) REFERENCES planets(pid);
3603
3604
3605 --
3606 -- Name: email_change_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3607 --
3608
3609 ALTER TABLE ONLY email_change
3610     ADD CONSTRAINT email_change_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid);
3611
3612
3613 --
3614 -- Name: fleet_scans_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3615 --
3616
3617 ALTER TABLE ONLY fleet_scans
3618     ADD CONSTRAINT fleet_scans_id_fkey FOREIGN KEY (fid) REFERENCES fleets(fid) ON DELETE CASCADE;
3619
3620
3621 --
3622 -- Name: fleet_scans_scan_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3623 --
3624
3625 ALTER TABLE ONLY fleet_scans
3626     ADD CONSTRAINT fleet_scans_scan_fkey FOREIGN KEY (id) REFERENCES scans(id);
3627
3628
3629 --
3630 -- Name: fleet_ships_fleet_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3631 --
3632
3633 ALTER TABLE ONLY fleet_ships
3634     ADD CONSTRAINT fleet_ships_fleet_fkey FOREIGN KEY (fid) REFERENCES fleets(fid) ON UPDATE CASCADE ON DELETE CASCADE;
3635
3636
3637 --
3638 -- Name: fleet_ships_ship_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3639 --
3640
3641 ALTER TABLE ONLY fleet_ships
3642     ADD CONSTRAINT fleet_ships_ship_fkey FOREIGN KEY (ship) REFERENCES ship_stats(ship);
3643
3644
3645 --
3646 -- Name: fleets_sender_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3647 --
3648
3649 ALTER TABLE ONLY fleets
3650     ADD CONSTRAINT fleets_sender_fkey FOREIGN KEY (pid) REFERENCES planets(pid) ON UPDATE CASCADE ON DELETE CASCADE;
3651
3652
3653 --
3654 -- Name: forum_access_fbid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3655 --
3656
3657 ALTER TABLE ONLY forum_access
3658     ADD CONSTRAINT forum_access_fbid_fkey FOREIGN KEY (fbid) REFERENCES forum_boards(fbid) ON UPDATE CASCADE ON DELETE CASCADE;
3659
3660
3661 --
3662 -- Name: forum_access_gid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3663 --
3664
3665 ALTER TABLE ONLY forum_access
3666     ADD CONSTRAINT forum_access_gid_fkey FOREIGN KEY (gid) REFERENCES groups(gid) ON UPDATE CASCADE ON DELETE CASCADE;
3667
3668
3669 --
3670 -- Name: forum_boards_fcid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3671 --
3672
3673 ALTER TABLE ONLY forum_boards
3674     ADD CONSTRAINT forum_boards_fcid_fkey FOREIGN KEY (fcid) REFERENCES forum_categories(fcid) ON UPDATE CASCADE ON DELETE CASCADE;
3675
3676
3677 --
3678 -- Name: forum_posts_ftid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3679 --
3680
3681 ALTER TABLE ONLY forum_posts
3682     ADD CONSTRAINT forum_posts_ftid_fkey FOREIGN KEY (ftid) REFERENCES forum_threads(ftid) ON UPDATE CASCADE ON DELETE CASCADE;
3683
3684
3685 --
3686 -- Name: forum_posts_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3687 --
3688
3689 ALTER TABLE ONLY forum_posts
3690     ADD CONSTRAINT forum_posts_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid) ON UPDATE CASCADE ON DELETE CASCADE;
3691
3692
3693 --
3694 -- Name: forum_priv_access_ftid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3695 --
3696
3697 ALTER TABLE ONLY forum_priv_access
3698     ADD CONSTRAINT forum_priv_access_ftid_fkey FOREIGN KEY (ftid) REFERENCES forum_threads(ftid) ON DELETE CASCADE;
3699
3700
3701 --
3702 -- Name: forum_priv_access_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3703 --
3704
3705 ALTER TABLE ONLY forum_priv_access
3706     ADD CONSTRAINT forum_priv_access_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid);
3707
3708
3709 --
3710 -- Name: forum_thread_visits_ftid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3711 --
3712
3713 ALTER TABLE ONLY forum_thread_visits
3714     ADD CONSTRAINT forum_thread_visits_ftid_fkey FOREIGN KEY (ftid) REFERENCES forum_threads(ftid) ON UPDATE CASCADE ON DELETE CASCADE;
3715
3716
3717 --
3718 -- Name: forum_thread_visits_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3719 --
3720
3721 ALTER TABLE ONLY forum_thread_visits
3722     ADD CONSTRAINT forum_thread_visits_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid) ON UPDATE CASCADE ON DELETE CASCADE;
3723
3724
3725 --
3726 -- Name: forum_threads_fbid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3727 --
3728
3729 ALTER TABLE ONLY forum_threads
3730     ADD CONSTRAINT forum_threads_fbid_fkey FOREIGN KEY (fbid) REFERENCES forum_boards(fbid) ON UPDATE CASCADE ON DELETE CASCADE;
3731
3732
3733 --
3734 -- Name: forum_threads_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3735 --
3736
3737 ALTER TABLE ONLY forum_threads
3738     ADD CONSTRAINT forum_threads_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid) ON UPDATE CASCADE ON DELETE RESTRICT;
3739
3740
3741 --
3742 -- Name: full_fleets_fid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3743 --
3744
3745 ALTER TABLE ONLY full_fleets
3746     ADD CONSTRAINT full_fleets_fid_fkey FOREIGN KEY (fid) REFERENCES fleets(fid);
3747
3748
3749 --
3750 -- Name: full_fleets_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3751 --
3752
3753 ALTER TABLE ONLY full_fleets
3754     ADD CONSTRAINT full_fleets_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid);
3755
3756
3757 --
3758 -- Name: group_roles_gid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3759 --
3760
3761 ALTER TABLE ONLY group_roles
3762     ADD CONSTRAINT group_roles_gid_fkey FOREIGN KEY (gid) REFERENCES groups(gid) ON UPDATE CASCADE ON DELETE CASCADE;
3763
3764
3765 --
3766 -- Name: group_roles_role_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3767 --
3768
3769 ALTER TABLE ONLY group_roles
3770     ADD CONSTRAINT group_roles_role_fkey FOREIGN KEY (role) REFERENCES roles(role);
3771
3772
3773 --
3774 -- Name: groupmembers_gid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3775 --
3776
3777 ALTER TABLE ONLY groupmembers
3778     ADD CONSTRAINT groupmembers_gid_fkey FOREIGN KEY (gid) REFERENCES groups(gid) ON UPDATE CASCADE ON DELETE CASCADE;
3779
3780
3781 --
3782 -- Name: groupmembers_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3783 --
3784
3785 ALTER TABLE ONLY groupmembers
3786     ADD CONSTRAINT groupmembers_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid) ON UPDATE CASCADE ON DELETE CASCADE;
3787
3788
3789 --
3790 -- Name: incomings_call_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3791 --
3792
3793 ALTER TABLE ONLY incomings
3794     ADD CONSTRAINT incomings_call_fkey FOREIGN KEY (call) REFERENCES calls(call) ON UPDATE CASCADE ON DELETE CASCADE;
3795
3796
3797 --
3798 -- Name: incomings_sender_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3799 --
3800
3801 ALTER TABLE ONLY incomings
3802     ADD CONSTRAINT incomings_sender_fkey FOREIGN KEY (pid) REFERENCES planets(pid) ON UPDATE CASCADE ON DELETE CASCADE;
3803
3804
3805 --
3806 -- Name: intel_scans_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3807 --
3808
3809 ALTER TABLE ONLY intel_scans
3810     ADD CONSTRAINT intel_scans_id_fkey FOREIGN KEY (id) REFERENCES scans(id);
3811
3812
3813 --
3814 -- Name: intel_scans_intel_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3815 --
3816
3817 ALTER TABLE ONLY intel_scans
3818     ADD CONSTRAINT intel_scans_intel_fkey FOREIGN KEY (intel) REFERENCES intel(id) ON DELETE CASCADE;
3819
3820
3821 --
3822 -- Name: intel_sender_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3823 --
3824
3825 ALTER TABLE ONLY intel
3826     ADD CONSTRAINT intel_sender_fkey FOREIGN KEY (sender) REFERENCES planets(pid);
3827
3828
3829 --
3830 -- Name: intel_target_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3831 --
3832
3833 ALTER TABLE ONLY intel
3834     ADD CONSTRAINT intel_target_fkey FOREIGN KEY (target) REFERENCES planets(pid);
3835
3836
3837 --
3838 -- Name: intel_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3839 --
3840
3841 ALTER TABLE ONLY intel
3842     ADD CONSTRAINT intel_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid);
3843
3844
3845 --
3846 -- Name: irc_requests_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3847 --
3848
3849 ALTER TABLE ONLY irc_requests
3850     ADD CONSTRAINT irc_requests_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid);
3851
3852
3853 --
3854 -- Name: launch_confirmations_fid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3855 --
3856
3857 ALTER TABLE ONLY launch_confirmations
3858     ADD CONSTRAINT launch_confirmations_fid_fkey FOREIGN KEY (fid) REFERENCES fleets(fid);
3859
3860
3861 --
3862 -- Name: launch_confirmations_target_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3863 --
3864
3865 ALTER TABLE ONLY launch_confirmations
3866     ADD CONSTRAINT launch_confirmations_target_fkey FOREIGN KEY (pid) REFERENCES planets(pid);
3867
3868
3869 --
3870 -- Name: launch_confirmations_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3871 --
3872
3873 ALTER TABLE ONLY launch_confirmations
3874     ADD CONSTRAINT launch_confirmations_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid);
3875
3876
3877 --
3878 -- Name: planet_scans_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3879 --
3880
3881 ALTER TABLE ONLY planet_scans
3882     ADD CONSTRAINT planet_scans_id_fkey FOREIGN KEY (id) REFERENCES scans(id);
3883
3884
3885 --
3886 -- Name: planet_scans_planet_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3887 --
3888
3889 ALTER TABLE ONLY planet_scans
3890     ADD CONSTRAINT planet_scans_planet_fkey FOREIGN KEY (pid) REFERENCES planets(pid);
3891
3892
3893 --
3894 -- Name: planet_stats_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3895 --
3896
3897 ALTER TABLE ONLY planet_stats
3898     ADD CONSTRAINT planet_stats_id_fkey FOREIGN KEY (pid) REFERENCES planets(pid) ON UPDATE CASCADE ON DELETE CASCADE;
3899
3900
3901 --
3902 -- Name: planet_tags_pid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3903 --
3904
3905 ALTER TABLE ONLY planet_tags
3906     ADD CONSTRAINT planet_tags_pid_fkey FOREIGN KEY (pid) REFERENCES planets(pid);
3907
3908
3909 --
3910 -- Name: planet_tags_tag_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3911 --
3912
3913 ALTER TABLE ONLY planet_tags
3914     ADD CONSTRAINT planet_tags_tag_fkey FOREIGN KEY (tag) REFERENCES available_planet_tags(tag);
3915
3916
3917 --
3918 -- Name: planet_tags_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3919 --
3920
3921 ALTER TABLE ONLY planet_tags
3922     ADD CONSTRAINT planet_tags_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid);
3923
3924
3925 --
3926 -- Name: planets_alliance_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3927 --
3928
3929 ALTER TABLE ONLY planets
3930     ADD CONSTRAINT planets_alliance_fkey FOREIGN KEY (alliance) REFERENCES alliances(alliance) ON UPDATE CASCADE ON DELETE SET NULL;
3931
3932
3933 --
3934 -- Name: planets_ftid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3935 --
3936
3937 ALTER TABLE ONLY planets
3938     ADD CONSTRAINT planets_ftid_fkey FOREIGN KEY (ftid) REFERENCES forum_threads(ftid) ON UPDATE RESTRICT ON DELETE RESTRICT;
3939
3940
3941 --
3942 -- Name: raid_access_gid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3943 --
3944
3945 ALTER TABLE ONLY raid_access
3946     ADD CONSTRAINT raid_access_gid_fkey FOREIGN KEY (gid) REFERENCES groups(gid) ON UPDATE CASCADE ON DELETE CASCADE;
3947
3948
3949 --
3950 -- Name: raid_access_raid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3951 --
3952
3953 ALTER TABLE ONLY raid_access
3954     ADD CONSTRAINT raid_access_raid_fkey FOREIGN KEY (raid) REFERENCES raids(id) ON UPDATE CASCADE ON DELETE CASCADE;
3955
3956
3957 --
3958 -- Name: raid_claims_target_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3959 --
3960
3961 ALTER TABLE ONLY raid_claims
3962     ADD CONSTRAINT raid_claims_target_fkey FOREIGN KEY (target) REFERENCES raid_targets(id) ON UPDATE CASCADE ON DELETE CASCADE;
3963
3964
3965 --
3966 -- Name: raid_claims_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3967 --
3968
3969 ALTER TABLE ONLY raid_claims
3970     ADD CONSTRAINT raid_claims_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid) ON UPDATE CASCADE ON DELETE CASCADE;
3971
3972
3973 --
3974 -- Name: raid_targets_planet_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3975 --
3976
3977 ALTER TABLE ONLY raid_targets
3978     ADD CONSTRAINT raid_targets_planet_fkey FOREIGN KEY (pid) REFERENCES planets(pid) ON UPDATE CASCADE ON DELETE CASCADE;
3979
3980
3981 --
3982 -- Name: raid_targets_raid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3983 --
3984
3985 ALTER TABLE ONLY raid_targets
3986     ADD CONSTRAINT raid_targets_raid_fkey FOREIGN KEY (raid) REFERENCES raids(id) ON UPDATE CASCADE ON DELETE CASCADE;
3987
3988
3989 --
3990 -- Name: scan_requests_planet_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3991 --
3992
3993 ALTER TABLE ONLY scan_requests
3994     ADD CONSTRAINT scan_requests_planet_fkey FOREIGN KEY (pid) REFERENCES planets(pid);
3995
3996
3997 --
3998 -- Name: scan_requests_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
3999 --
4000
4001 ALTER TABLE ONLY scan_requests
4002     ADD CONSTRAINT scan_requests_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid);
4003
4004
4005 --
4006 -- Name: scans_planet_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
4007 --
4008
4009 ALTER TABLE ONLY scans
4010     ADD CONSTRAINT scans_planet_fkey FOREIGN KEY (pid) REFERENCES planets(pid) ON UPDATE CASCADE ON DELETE CASCADE;
4011
4012
4013 --
4014 -- Name: scans_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
4015 --
4016
4017 ALTER TABLE ONLY scans
4018     ADD CONSTRAINT scans_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid) ON UPDATE RESTRICT ON DELETE RESTRICT;
4019
4020
4021 --
4022 -- Name: session_log_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
4023 --
4024
4025 ALTER TABLE ONLY session_log
4026     ADD CONSTRAINT session_log_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid);
4027
4028
4029 --
4030 -- Name: sms_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
4031 --
4032
4033 ALTER TABLE ONLY sms
4034     ADD CONSTRAINT sms_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid);
4035
4036
4037 --
4038 -- Name: users_planet_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
4039 --
4040
4041 ALTER TABLE ONLY users
4042     ADD CONSTRAINT users_planet_fkey FOREIGN KEY (pid) REFERENCES planets(pid) ON UPDATE SET NULL ON DELETE SET NULL;
4043
4044
4045 --
4046 -- Name: users_tfid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
4047 --
4048
4049 ALTER TABLE ONLY users
4050     ADD CONSTRAINT users_tfid_fkey FOREIGN KEY (ftid) REFERENCES forum_threads(ftid) ON UPDATE SET NULL ON DELETE SET NULL;
4051
4052
4053 --
4054 -- Name: wiki_namespace_access_gid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
4055 --
4056
4057 ALTER TABLE ONLY wiki_namespace_access
4058     ADD CONSTRAINT wiki_namespace_access_gid_fkey FOREIGN KEY (gid) REFERENCES groups(gid) ON UPDATE CASCADE ON DELETE CASCADE;
4059
4060
4061 --
4062 -- Name: wiki_namespace_access_namespace_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
4063 --
4064
4065 ALTER TABLE ONLY wiki_namespace_access
4066     ADD CONSTRAINT wiki_namespace_access_namespace_fkey FOREIGN KEY (namespace) REFERENCES wiki_namespaces(namespace);
4067
4068
4069 --
4070 -- Name: wiki_page_access_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
4071 --
4072
4073 ALTER TABLE ONLY wiki_page_access
4074     ADD CONSTRAINT wiki_page_access_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid);
4075
4076
4077 --
4078 -- Name: wiki_page_access_wpid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
4079 --
4080
4081 ALTER TABLE ONLY wiki_page_access
4082     ADD CONSTRAINT wiki_page_access_wpid_fkey FOREIGN KEY (wpid) REFERENCES wiki_pages(wpid);
4083
4084
4085 --
4086 -- Name: wiki_page_revisions_parent_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
4087 --
4088
4089 ALTER TABLE ONLY wiki_page_revisions
4090     ADD CONSTRAINT wiki_page_revisions_parent_fkey FOREIGN KEY (parent) REFERENCES wiki_page_revisions(wprev);
4091
4092
4093 --
4094 -- Name: wiki_page_revisions_uid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
4095 --
4096
4097 ALTER TABLE ONLY wiki_page_revisions
4098     ADD CONSTRAINT wiki_page_revisions_uid_fkey FOREIGN KEY (uid) REFERENCES users(uid);
4099
4100
4101 --
4102 -- Name: wiki_page_revisions_wpid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
4103 --
4104
4105 ALTER TABLE ONLY wiki_page_revisions
4106     ADD CONSTRAINT wiki_page_revisions_wpid_fkey FOREIGN KEY (wpid) REFERENCES wiki_pages(wpid);
4107
4108
4109 --
4110 -- Name: wiki_pages_namespace_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
4111 --
4112
4113 ALTER TABLE ONLY wiki_pages
4114     ADD CONSTRAINT wiki_pages_namespace_fkey FOREIGN KEY (namespace) REFERENCES wiki_namespaces(namespace);
4115
4116
4117 --
4118 -- Name: wiki_pages_wprev_fkey; Type: FK CONSTRAINT; Schema: public; Owner: ndawn
4119 --
4120
4121 ALTER TABLE ONLY wiki_pages
4122     ADD CONSTRAINT wiki_pages_wprev_fkey FOREIGN KEY (wprev) REFERENCES wiki_page_revisions(wprev);
4123
4124
4125 --
4126 -- Name: public; Type: ACL; Schema: -; Owner: postgres
4127 --
4128
4129 REVOKE ALL ON SCHEMA public FROM PUBLIC;
4130 REVOKE ALL ON SCHEMA public FROM postgres;
4131 GRANT ALL ON SCHEMA public TO postgres;
4132 GRANT ALL ON SCHEMA public TO PUBLIC;
4133
4134
4135 --
4136 -- Name: coords(integer, integer, integer); Type: ACL; Schema: public; Owner: ndawn
4137 --
4138
4139 REVOKE ALL ON FUNCTION coords(x integer, y integer, z integer) FROM PUBLIC;
4140 REVOKE ALL ON FUNCTION coords(x integer, y integer, z integer) FROM ndawn;
4141 GRANT ALL ON FUNCTION coords(x integer, y integer, z integer) TO ndawn;
4142 GRANT ALL ON FUNCTION coords(x integer, y integer, z integer) TO PUBLIC;
4143 GRANT ALL ON FUNCTION coords(x integer, y integer, z integer) TO intel;
4144
4145
4146 --
4147 -- Name: endtick(); Type: ACL; Schema: public; Owner: ndawn
4148 --
4149
4150 REVOKE ALL ON FUNCTION endtick() FROM PUBLIC;
4151 REVOKE ALL ON FUNCTION endtick() FROM ndawn;
4152 GRANT ALL ON FUNCTION endtick() TO ndawn;
4153 GRANT ALL ON FUNCTION endtick() TO PUBLIC;
4154 GRANT ALL ON FUNCTION endtick() TO intel;
4155
4156
4157 --
4158 -- Name: planetcoords(integer, integer); Type: ACL; Schema: public; Owner: ndawn
4159 --
4160
4161 REVOKE ALL ON FUNCTION planetcoords(id integer, tick integer, OUT x integer, OUT y integer, OUT z integer) FROM PUBLIC;
4162 REVOKE ALL ON FUNCTION planetcoords(id integer, tick integer, OUT x integer, OUT y integer, OUT z integer) FROM ndawn;
4163 GRANT ALL ON FUNCTION planetcoords(id integer, tick integer, OUT x integer, OUT y integer, OUT z integer) TO ndawn;
4164 GRANT ALL ON FUNCTION planetcoords(id integer, tick integer, OUT x integer, OUT y integer, OUT z integer) TO PUBLIC;
4165 GRANT ALL ON FUNCTION planetcoords(id integer, tick integer, OUT x integer, OUT y integer, OUT z integer) TO intel;
4166
4167
4168 --
4169 -- Name: planetid(integer, integer, integer, integer); Type: ACL; Schema: public; Owner: ndawn
4170 --
4171
4172 REVOKE ALL ON FUNCTION planetid(x integer, y integer, z integer, tick integer) FROM PUBLIC;
4173 REVOKE ALL ON FUNCTION planetid(x integer, y integer, z integer, tick integer) FROM ndawn;
4174 GRANT ALL ON FUNCTION planetid(x integer, y integer, z integer, tick integer) TO ndawn;
4175 GRANT ALL ON FUNCTION planetid(x integer, y integer, z integer, tick integer) TO PUBLIC;
4176 GRANT ALL ON FUNCTION planetid(x integer, y integer, z integer, tick integer) TO intel;
4177
4178
4179 --
4180 -- Name: tick(); Type: ACL; Schema: public; Owner: ndawn
4181 --
4182
4183 REVOKE ALL ON FUNCTION tick() FROM PUBLIC;
4184 REVOKE ALL ON FUNCTION tick() FROM ndawn;
4185 GRANT ALL ON FUNCTION tick() TO ndawn;
4186 GRANT ALL ON FUNCTION tick() TO PUBLIC;
4187 GRANT ALL ON FUNCTION tick() TO intel;
4188
4189
4190 --
4191 -- Name: alliance_stats; Type: ACL; Schema: public; Owner: ndawn
4192 --
4193
4194 REVOKE ALL ON TABLE alliance_stats FROM PUBLIC;
4195 REVOKE ALL ON TABLE alliance_stats FROM ndawn;
4196 GRANT ALL ON TABLE alliance_stats TO ndawn;
4197 GRANT SELECT ON TABLE alliance_stats TO intel;
4198
4199
4200 --
4201 -- Name: alliances; Type: ACL; Schema: public; Owner: ndawn
4202 --
4203
4204 REVOKE ALL ON TABLE alliances FROM PUBLIC;
4205 REVOKE ALL ON TABLE alliances FROM ndawn;
4206 GRANT ALL ON TABLE alliances TO ndawn;
4207 GRANT SELECT ON TABLE alliances TO intel;
4208
4209
4210 --
4211 -- Name: development_scans; Type: ACL; Schema: public; Owner: ndawn
4212 --
4213
4214 REVOKE ALL ON TABLE development_scans FROM PUBLIC;
4215 REVOKE ALL ON TABLE development_scans FROM ndawn;
4216 GRANT ALL ON TABLE development_scans TO ndawn;
4217 GRANT SELECT ON TABLE development_scans TO intel;
4218
4219
4220 --
4221 -- Name: current_development_scans; Type: ACL; Schema: public; Owner: ndawn
4222 --
4223
4224 REVOKE ALL ON TABLE current_development_scans FROM PUBLIC;
4225 REVOKE ALL ON TABLE current_development_scans FROM ndawn;
4226 GRANT ALL ON TABLE current_development_scans TO ndawn;
4227 GRANT SELECT ON TABLE current_development_scans TO intel;
4228
4229
4230 --
4231 -- Name: planet_scans; Type: ACL; Schema: public; Owner: ndawn
4232 --
4233
4234 REVOKE ALL ON TABLE planet_scans FROM PUBLIC;
4235 REVOKE ALL ON TABLE planet_scans FROM ndawn;
4236 GRANT ALL ON TABLE planet_scans TO ndawn;
4237 GRANT SELECT ON TABLE planet_scans TO intel;
4238
4239
4240 --
4241 -- Name: current_planet_scans; Type: ACL; Schema: public; Owner: ndawn
4242 --
4243
4244 REVOKE ALL ON TABLE current_planet_scans FROM PUBLIC;
4245 REVOKE ALL ON TABLE current_planet_scans FROM ndawn;
4246 GRANT ALL ON TABLE current_planet_scans TO ndawn;
4247 GRANT SELECT ON TABLE current_planet_scans TO intel;
4248
4249
4250 --
4251 -- Name: planet_stats; Type: ACL; Schema: public; Owner: ndawn
4252 --
4253
4254 REVOKE ALL ON TABLE planet_stats FROM PUBLIC;
4255 REVOKE ALL ON TABLE planet_stats FROM ndawn;
4256 GRANT ALL ON TABLE planet_stats TO ndawn;
4257 GRANT SELECT ON TABLE planet_stats TO intel;
4258
4259
4260 --
4261 -- Name: planets; Type: ACL; Schema: public; Owner: ndawn
4262 --
4263
4264 REVOKE ALL ON TABLE planets FROM PUBLIC;
4265 REVOKE ALL ON TABLE planets FROM ndawn;
4266 GRANT ALL ON TABLE planets TO ndawn;
4267 GRANT SELECT ON TABLE planets TO intel;
4268
4269
4270 --
4271 -- Name: current_planet_stats; Type: ACL; Schema: public; Owner: ndawn
4272 --
4273
4274 REVOKE ALL ON TABLE current_planet_stats FROM PUBLIC;
4275 REVOKE ALL ON TABLE current_planet_stats FROM ndawn;
4276 GRANT ALL ON TABLE current_planet_stats TO ndawn;
4277 GRANT SELECT ON TABLE current_planet_stats TO intel;
4278
4279
4280 --
4281 -- Name: alliance_resources; Type: ACL; Schema: public; Owner: ndawn
4282 --
4283
4284 REVOKE ALL ON TABLE alliance_resources FROM PUBLIC;
4285 REVOKE ALL ON TABLE alliance_resources FROM ndawn;
4286 GRANT ALL ON TABLE alliance_resources TO ndawn;
4287 GRANT SELECT ON TABLE alliance_resources TO intel;
4288
4289
4290 --
4291 -- Name: available_planet_tags; Type: ACL; Schema: public; Owner: ndawn
4292 --
4293
4294 REVOKE ALL ON TABLE available_planet_tags FROM PUBLIC;
4295 REVOKE ALL ON TABLE available_planet_tags FROM ndawn;
4296 GRANT ALL ON TABLE available_planet_tags TO ndawn;
4297 GRANT SELECT ON TABLE available_planet_tags TO intel;
4298
4299
4300 --
4301 -- Name: fleet_ships; Type: ACL; Schema: public; Owner: ndawn
4302 --
4303
4304 REVOKE ALL ON TABLE fleet_ships FROM PUBLIC;
4305 REVOKE ALL ON TABLE fleet_ships FROM ndawn;
4306 GRANT ALL ON TABLE fleet_ships TO ndawn;
4307 GRANT SELECT ON TABLE fleet_ships TO intel;
4308
4309
4310 --
4311 -- Name: fleets; Type: ACL; Schema: public; Owner: ndawn
4312 --
4313
4314 REVOKE ALL ON TABLE fleets FROM PUBLIC;
4315 REVOKE ALL ON TABLE fleets FROM ndawn;
4316 GRANT ALL ON TABLE fleets TO ndawn;
4317 GRANT SELECT ON TABLE fleets TO intel;
4318
4319
4320 --
4321 -- Name: launch_confirmations; Type: ACL; Schema: public; Owner: ndawn
4322 --
4323
4324 REVOKE ALL ON TABLE launch_confirmations FROM PUBLIC;
4325 REVOKE ALL ON TABLE launch_confirmations FROM ndawn;
4326 GRANT ALL ON TABLE launch_confirmations TO ndawn;
4327 GRANT SELECT ON TABLE launch_confirmations TO intel;
4328
4329
4330 --
4331 -- Name: current_planet_stats_full; Type: ACL; Schema: public; Owner: ndawn
4332 --
4333
4334 REVOKE ALL ON TABLE current_planet_stats_full FROM PUBLIC;
4335 REVOKE ALL ON TABLE current_planet_stats_full FROM ndawn;
4336 GRANT ALL ON TABLE current_planet_stats_full TO ndawn;
4337 GRANT SELECT ON TABLE current_planet_stats_full TO intel;
4338
4339
4340 --
4341 -- Name: fleet_scans; Type: ACL; Schema: public; Owner: ndawn
4342 --
4343
4344 REVOKE ALL ON TABLE fleet_scans FROM PUBLIC;
4345 REVOKE ALL ON TABLE fleet_scans FROM ndawn;
4346 GRANT ALL ON TABLE fleet_scans TO ndawn;
4347 GRANT SELECT ON TABLE fleet_scans TO intel;
4348
4349
4350 --
4351 -- Name: intel; Type: ACL; Schema: public; Owner: ndawn
4352 --
4353
4354 REVOKE ALL ON TABLE intel FROM PUBLIC;
4355 REVOKE ALL ON TABLE intel FROM ndawn;
4356 GRANT ALL ON TABLE intel TO ndawn;
4357 GRANT SELECT ON TABLE intel TO intel;
4358
4359
4360 --
4361 -- Name: full_intel; Type: ACL; Schema: public; Owner: ndawn
4362 --
4363
4364 REVOKE ALL ON TABLE full_intel FROM PUBLIC;
4365 REVOKE ALL ON TABLE full_intel FROM ndawn;
4366 GRANT ALL ON TABLE full_intel TO ndawn;
4367 GRANT SELECT ON TABLE full_intel TO intel;
4368
4369
4370 --
4371 -- Name: galaxies; Type: ACL; Schema: public; Owner: ndawn
4372 --
4373
4374 REVOKE ALL ON TABLE galaxies FROM PUBLIC;
4375 REVOKE ALL ON TABLE galaxies FROM ndawn;
4376 GRANT ALL ON TABLE galaxies TO ndawn;
4377 GRANT SELECT ON TABLE galaxies TO intel;
4378
4379
4380 --
4381 -- Name: intel_scans; Type: ACL; Schema: public; Owner: ndawn
4382 --
4383
4384 REVOKE ALL ON TABLE intel_scans FROM PUBLIC;
4385 REVOKE ALL ON TABLE intel_scans FROM ndawn;
4386 GRANT ALL ON TABLE intel_scans TO ndawn;
4387 GRANT SELECT ON TABLE intel_scans TO intel;
4388
4389
4390 --
4391 -- Name: planet_tags; Type: ACL; Schema: public; Owner: ndawn
4392 --
4393
4394 REVOKE ALL ON TABLE planet_tags FROM PUBLIC;
4395 REVOKE ALL ON TABLE planet_tags FROM ndawn;
4396 GRANT ALL ON TABLE planet_tags TO ndawn;
4397 GRANT SELECT ON TABLE planet_tags TO intel;
4398
4399
4400 --
4401 -- Name: scans; Type: ACL; Schema: public; Owner: ndawn
4402 --
4403
4404 REVOKE ALL ON TABLE scans FROM PUBLIC;
4405 REVOKE ALL ON TABLE scans FROM ndawn;
4406 GRANT ALL ON TABLE scans TO ndawn;
4407 GRANT SELECT ON TABLE scans TO intel;
4408
4409
4410 --
4411 -- PostgreSQL database dump complete
4412 --
4413