Added hosts.theme_css which will allow us to provide a few basic stylesheets to custo...
[cocanwiki.git] / cocanwiki.sql
1 --
2 -- PostgreSQL database dump
3 --
4
5 SET client_encoding = 'UNICODE';
6 SET check_function_bodies = false;
7
8 SET SESSION AUTHORIZATION 'postgres';
9
10 --
11 -- TOC entry 4 (OID 2200)
12 -- Name: public; Type: ACL; Schema: -; Owner: postgres
13 --
14
15 REVOKE ALL ON SCHEMA public FROM PUBLIC;
16 REVOKE ALL ON SCHEMA public FROM postgres;
17 GRANT ALL ON SCHEMA public TO PUBLIC;
18
19
20 SET SESSION AUTHORIZATION 'rich';
21
22 SET search_path = public, pg_catalog;
23
24 --
25 -- TOC entry 5 (OID 536004)
26 -- Name: pages; Type: TABLE; Schema: public; Owner: rich
27 --
28
29 CREATE TABLE pages (
30     id serial NOT NULL,
31     url text,
32     url_deleted text,
33     title text NOT NULL,
34     description text NOT NULL,
35     creation_date timestamp without time zone DEFAULT ('now'::text)::timestamp(6) with time zone NOT NULL,
36     last_modified_date timestamp without time zone DEFAULT ('now'::text)::timestamp(6) with time zone NOT NULL,
37     hostid integer NOT NULL,
38     logged_ip text,
39     redirect text,
40     css text,
41     logged_user integer
42 );
43
44
45 --
46 -- TOC entry 6 (OID 536004)
47 -- Name: pages; Type: ACL; Schema: public; Owner: rich
48 --
49
50 REVOKE ALL ON TABLE pages FROM PUBLIC;
51 GRANT ALL ON TABLE pages TO "www-data";
52
53
54 --
55 -- TOC entry 25 (OID 536004)
56 -- Name: pages_id_seq; Type: ACL; Schema: public; Owner: rich
57 --
58
59 REVOKE ALL ON TABLE pages_id_seq FROM PUBLIC;
60 GRANT ALL ON TABLE pages_id_seq TO "www-data";
61
62
63 --
64 -- TOC entry 7 (OID 536021)
65 -- Name: contents; Type: TABLE; Schema: public; Owner: rich
66 --
67
68 CREATE TABLE contents (
69     id serial NOT NULL,
70     pageid integer NOT NULL,
71     ordering integer NOT NULL,
72     sectionname text NOT NULL,
73     content text NOT NULL,
74     divname text
75 );
76
77
78 --
79 -- TOC entry 8 (OID 536021)
80 -- Name: contents; Type: ACL; Schema: public; Owner: rich
81 --
82
83 REVOKE ALL ON TABLE contents FROM PUBLIC;
84 GRANT ALL ON TABLE contents TO "www-data";
85
86
87 --
88 -- TOC entry 26 (OID 536021)
89 -- Name: contents_id_seq; Type: ACL; Schema: public; Owner: rich
90 --
91
92 REVOKE ALL ON TABLE contents_id_seq FROM PUBLIC;
93 GRANT ALL ON TABLE contents_id_seq TO "www-data";
94
95
96 --
97 -- TOC entry 9 (OID 536371)
98 -- Name: hosts; Type: TABLE; Schema: public; Owner: rich
99 --
100
101 CREATE TABLE hosts (
102     id serial NOT NULL,
103     canonical_hostname text NOT NULL,
104     css text,
105     edit_anon boolean DEFAULT true NOT NULL,
106     create_account_anon boolean DEFAULT true NOT NULL,
107     theme_css text
108 );
109
110
111 --
112 -- TOC entry 10 (OID 536371)
113 -- Name: hosts; Type: ACL; Schema: public; Owner: rich
114 --
115
116 REVOKE ALL ON TABLE hosts FROM PUBLIC;
117 GRANT ALL ON TABLE hosts TO "www-data";
118
119
120 --
121 -- TOC entry 27 (OID 536371)
122 -- Name: hosts_id_seq; Type: ACL; Schema: public; Owner: rich
123 --
124
125 REVOKE ALL ON TABLE hosts_id_seq FROM PUBLIC;
126 GRANT ALL ON TABLE hosts_id_seq TO "www-data";
127
128
129 --
130 -- TOC entry 11 (OID 536379)
131 -- Name: hostnames; Type: TABLE; Schema: public; Owner: rich
132 --
133
134 CREATE TABLE hostnames (
135     hostid integer NOT NULL,
136     name text NOT NULL
137 );
138
139
140 --
141 -- TOC entry 12 (OID 536379)
142 -- Name: hostnames; Type: ACL; Schema: public; Owner: rich
143 --
144
145 REVOKE ALL ON TABLE hostnames FROM PUBLIC;
146 GRANT ALL ON TABLE hostnames TO "www-data";
147
148
149 --
150 -- TOC entry 13 (OID 536915)
151 -- Name: email_notify; Type: TABLE; Schema: public; Owner: rich
152 --
153
154 CREATE TABLE email_notify (
155     hostid integer NOT NULL,
156     email text NOT NULL,
157     name text
158 );
159
160
161 --
162 -- TOC entry 14 (OID 536915)
163 -- Name: email_notify; Type: ACL; Schema: public; Owner: rich
164 --
165
166 REVOKE ALL ON TABLE email_notify FROM PUBLIC;
167 GRANT ALL ON TABLE email_notify TO "www-data";
168
169
170 --
171 -- TOC entry 15 (OID 537151)
172 -- Name: images; Type: TABLE; Schema: public; Owner: rich
173 --
174
175 CREATE TABLE images (
176     id serial NOT NULL,
177     hostid integer NOT NULL,
178     name text,
179     name_deleted text,
180     image bytea NOT NULL,
181     width integer NOT NULL,
182     height integer NOT NULL,
183     alt text NOT NULL,
184     title text,
185     longdesc text,
186     "class" text,
187     mime_type text NOT NULL,
188     thumbnail bytea,
189     tn_width integer,
190     tn_height integer,
191     tn_mime_type text,
192     upload_date timestamp without time zone DEFAULT ('now'::text)::timestamp(6) with time zone NOT NULL
193 );
194
195
196 --
197 -- TOC entry 16 (OID 537151)
198 -- Name: images; Type: ACL; Schema: public; Owner: rich
199 --
200
201 REVOKE ALL ON TABLE images FROM PUBLIC;
202 GRANT ALL ON TABLE images TO "www-data";
203
204
205 --
206 -- TOC entry 28 (OID 537151)
207 -- Name: images_id_seq; Type: ACL; Schema: public; Owner: rich
208 --
209
210 REVOKE ALL ON TABLE images_id_seq FROM PUBLIC;
211 GRANT ALL ON TABLE images_id_seq TO "www-data";
212
213
214 --
215 -- TOC entry 17 (OID 537166)
216 -- Name: files; Type: TABLE; Schema: public; Owner: rich
217 --
218
219 CREATE TABLE files (
220     id serial NOT NULL,
221     hostid integer NOT NULL,
222     name text,
223     name_deleted text,
224     content bytea NOT NULL,
225     title text,
226     mime_type text NOT NULL,
227     upload_date timestamp without time zone DEFAULT ('now'::text)::timestamp(6) with time zone NOT NULL
228 );
229
230
231 --
232 -- TOC entry 18 (OID 537166)
233 -- Name: files; Type: ACL; Schema: public; Owner: rich
234 --
235
236 REVOKE ALL ON TABLE files FROM PUBLIC;
237 GRANT ALL ON TABLE files TO "www-data";
238
239
240 --
241 -- TOC entry 29 (OID 537166)
242 -- Name: files_id_seq; Type: ACL; Schema: public; Owner: rich
243 --
244
245 REVOKE ALL ON TABLE files_id_seq FROM PUBLIC;
246 GRANT ALL ON TABLE files_id_seq TO "www-data";
247
248
249 --
250 -- TOC entry 19 (OID 540816)
251 -- Name: users; Type: TABLE; Schema: public; Owner: rich
252 --
253
254 CREATE TABLE users (
255     id serial NOT NULL,
256     hostid integer NOT NULL,
257     name text NOT NULL,
258     "password" text NOT NULL,
259     email text,
260     registration_date date DEFAULT ('now'::text)::date NOT NULL,
261     can_edit boolean DEFAULT true NOT NULL,
262     can_manage_users boolean DEFAULT false NOT NULL
263 );
264
265
266 --
267 -- TOC entry 20 (OID 540816)
268 -- Name: users; Type: ACL; Schema: public; Owner: rich
269 --
270
271 REVOKE ALL ON TABLE users FROM PUBLIC;
272 GRANT ALL ON TABLE users TO "www-data";
273
274
275 --
276 -- TOC entry 30 (OID 540816)
277 -- Name: users_id_seq; Type: ACL; Schema: public; Owner: rich
278 --
279
280 REVOKE ALL ON TABLE users_id_seq FROM PUBLIC;
281 GRANT ALL ON TABLE users_id_seq TO "www-data";
282
283
284 --
285 -- TOC entry 21 (OID 540832)
286 -- Name: usercookies; Type: TABLE; Schema: public; Owner: rich
287 --
288
289 CREATE TABLE usercookies (
290     userid integer NOT NULL,
291     cookie text NOT NULL
292 );
293
294
295 --
296 -- TOC entry 22 (OID 540832)
297 -- Name: usercookies; Type: ACL; Schema: public; Owner: rich
298 --
299
300 REVOKE ALL ON TABLE usercookies FROM PUBLIC;
301 GRANT ALL ON TABLE usercookies TO "www-data";
302
303
304 --
305 -- TOC entry 23 (OID 540961)
306 -- Name: sitemenu; Type: TABLE; Schema: public; Owner: rich
307 --
308
309 CREATE TABLE sitemenu (
310     hostid integer NOT NULL,
311     url text NOT NULL,
312     label text NOT NULL,
313     ordering integer NOT NULL
314 );
315
316
317 --
318 -- TOC entry 24 (OID 540961)
319 -- Name: sitemenu; Type: ACL; Schema: public; Owner: rich
320 --
321
322 REVOKE ALL ON TABLE sitemenu FROM PUBLIC;
323 GRANT ALL ON TABLE sitemenu TO "www-data";
324
325
326 --
327 -- TOC entry 35 (OID 536388)
328 -- Name: hostnames_hostid_name_uq; Type: INDEX; Schema: public; Owner: rich
329 --
330
331 CREATE UNIQUE INDEX hostnames_hostid_name_uq ON hostnames USING btree (hostid, name);
332
333
334 --
335 -- TOC entry 36 (OID 536389)
336 -- Name: hostnams_name_uq; Type: INDEX; Schema: public; Owner: rich
337 --
338
339 CREATE UNIQUE INDEX hostnams_name_uq ON hostnames USING btree (name);
340
341
342 --
343 -- TOC entry 32 (OID 536419)
344 -- Name: pages_url_uq; Type: INDEX; Schema: public; Owner: rich
345 --
346
347 CREATE UNIQUE INDEX pages_url_uq ON pages USING btree (hostid, url);
348
349
350 --
351 -- TOC entry 37 (OID 536924)
352 -- Name: email_notify_email_uq; Type: INDEX; Schema: public; Owner: rich
353 --
354
355 CREATE UNIQUE INDEX email_notify_email_uq ON email_notify USING btree (hostid, email);
356
357
358 --
359 -- TOC entry 38 (OID 540251)
360 -- Name: images_name_uq; Type: INDEX; Schema: public; Owner: rich
361 --
362
363 CREATE UNIQUE INDEX images_name_uq ON images USING btree (hostid, name);
364
365
366 --
367 -- TOC entry 40 (OID 540252)
368 -- Name: files_name_uq; Type: INDEX; Schema: public; Owner: rich
369 --
370
371 CREATE UNIQUE INDEX files_name_uq ON files USING btree (hostid, name);
372
373
374 --
375 -- TOC entry 43 (OID 540831)
376 -- Name: users_name_uq; Type: INDEX; Schema: public; Owner: rich
377 --
378
379 CREATE UNIQUE INDEX users_name_uq ON users USING btree (hostid, name);
380
381
382 --
383 -- TOC entry 42 (OID 540946)
384 -- Name: users_id_uq; Type: INDEX; Schema: public; Owner: rich
385 --
386
387 CREATE UNIQUE INDEX users_id_uq ON users USING btree (hostid, id);
388
389
390 --
391 -- TOC entry 45 (OID 540970)
392 -- Name: sitemenu_ordering_uq; Type: INDEX; Schema: public; Owner: rich
393 --
394
395 CREATE UNIQUE INDEX sitemenu_ordering_uq ON sitemenu USING btree (hostid, ordering);
396
397
398 --
399 -- TOC entry 46 (OID 540971)
400 -- Name: sitemenu_url_uq; Type: INDEX; Schema: public; Owner: rich
401 --
402
403 CREATE UNIQUE INDEX sitemenu_url_uq ON sitemenu USING btree (hostid, url);
404
405
406 --
407 -- TOC entry 31 (OID 536012)
408 -- Name: pages_pkey; Type: CONSTRAINT; Schema: public; Owner: rich
409 --
410
411 ALTER TABLE ONLY pages
412     ADD CONSTRAINT pages_pkey PRIMARY KEY (id);
413
414
415 --
416 -- TOC entry 33 (OID 536027)
417 -- Name: contents_pkey; Type: CONSTRAINT; Schema: public; Owner: rich
418 --
419
420 ALTER TABLE ONLY contents
421     ADD CONSTRAINT contents_pkey PRIMARY KEY (id);
422
423
424 --
425 -- TOC entry 34 (OID 536377)
426 -- Name: hosts_pkey; Type: CONSTRAINT; Schema: public; Owner: rich
427 --
428
429 ALTER TABLE ONLY hosts
430     ADD CONSTRAINT hosts_pkey PRIMARY KEY (id);
431
432
433 --
434 -- TOC entry 39 (OID 537158)
435 -- Name: images_pkey; Type: CONSTRAINT; Schema: public; Owner: rich
436 --
437
438 ALTER TABLE ONLY images
439     ADD CONSTRAINT images_pkey PRIMARY KEY (id);
440
441
442 --
443 -- TOC entry 41 (OID 537173)
444 -- Name: files_pkey; Type: CONSTRAINT; Schema: public; Owner: rich
445 --
446
447 ALTER TABLE ONLY files
448     ADD CONSTRAINT files_pkey PRIMARY KEY (id);
449
450
451 --
452 -- TOC entry 44 (OID 540825)
453 -- Name: users_pkey; Type: CONSTRAINT; Schema: public; Owner: rich
454 --
455
456 ALTER TABLE ONLY users
457     ADD CONSTRAINT users_pkey PRIMARY KEY (id);
458
459
460 --
461 -- TOC entry 51 (OID 536029)
462 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
463 --
464
465 ALTER TABLE ONLY contents
466     ADD CONSTRAINT "$1" FOREIGN KEY (pageid) REFERENCES pages(id);
467
468
469 --
470 -- TOC entry 53 (OID 536384)
471 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
472 --
473
474 ALTER TABLE ONLY hostnames
475     ADD CONSTRAINT "$1" FOREIGN KEY (hostid) REFERENCES hosts(id);
476
477
478 --
479 -- TOC entry 52 (OID 536394)
480 -- Name: hosts_hostname_cn; Type: FK CONSTRAINT; Schema: public; Owner: rich
481 --
482
483 ALTER TABLE ONLY hosts
484     ADD CONSTRAINT hosts_hostname_cn FOREIGN KEY (id, canonical_hostname) REFERENCES hostnames(hostid, name) DEFERRABLE;
485
486
487 --
488 -- TOC entry 47 (OID 536404)
489 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
490 --
491
492 ALTER TABLE ONLY pages
493     ADD CONSTRAINT "$1" FOREIGN KEY (hostid) REFERENCES hosts(id);
494
495
496 --
497 -- TOC entry 54 (OID 536920)
498 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
499 --
500
501 ALTER TABLE ONLY email_notify
502     ADD CONSTRAINT "$1" FOREIGN KEY (hostid) REFERENCES hosts(id);
503
504
505 --
506 -- TOC entry 55 (OID 537160)
507 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
508 --
509
510 ALTER TABLE ONLY images
511     ADD CONSTRAINT "$1" FOREIGN KEY (hostid) REFERENCES hosts(id);
512
513
514 --
515 -- TOC entry 56 (OID 537175)
516 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
517 --
518
519 ALTER TABLE ONLY files
520     ADD CONSTRAINT "$1" FOREIGN KEY (hostid) REFERENCES hosts(id);
521
522
523 --
524 -- TOC entry 48 (OID 539155)
525 -- Name: pages_redirect_cn; Type: FK CONSTRAINT; Schema: public; Owner: rich
526 --
527
528 ALTER TABLE ONLY pages
529     ADD CONSTRAINT pages_redirect_cn FOREIGN KEY (hostid, redirect) REFERENCES pages(hostid, url) DEFERRABLE;
530
531
532 --
533 -- TOC entry 57 (OID 540827)
534 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
535 --
536
537 ALTER TABLE ONLY users
538     ADD CONSTRAINT "$1" FOREIGN KEY (hostid) REFERENCES hosts(id);
539
540
541 --
542 -- TOC entry 58 (OID 540837)
543 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
544 --
545
546 ALTER TABLE ONLY usercookies
547     ADD CONSTRAINT "$1" FOREIGN KEY (userid) REFERENCES users(id);
548
549
550 --
551 -- TOC entry 49 (OID 540942)
552 -- Name: $2; Type: FK CONSTRAINT; Schema: public; Owner: rich
553 --
554
555 ALTER TABLE ONLY pages
556     ADD CONSTRAINT "$2" FOREIGN KEY (logged_user) REFERENCES users(id);
557
558
559 --
560 -- TOC entry 50 (OID 540947)
561 -- Name: pages_user_cn; Type: FK CONSTRAINT; Schema: public; Owner: rich
562 --
563
564 ALTER TABLE ONLY pages
565     ADD CONSTRAINT pages_user_cn FOREIGN KEY (hostid, logged_user) REFERENCES users(hostid, id);
566
567
568 --
569 -- TOC entry 59 (OID 540966)
570 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
571 --
572
573 ALTER TABLE ONLY sitemenu
574     ADD CONSTRAINT "$1" FOREIGN KEY (hostid) REFERENCES hosts(id);
575
576
577 --
578 -- TOC entry 60 (OID 540972)
579 -- Name: sitemenu_url_cn; Type: FK CONSTRAINT; Schema: public; Owner: rich
580 --
581
582 ALTER TABLE ONLY sitemenu
583     ADD CONSTRAINT sitemenu_url_cn FOREIGN KEY (hostid, url) REFERENCES pages(hostid, url) DEFERRABLE;
584
585
586 SET SESSION AUTHORIZATION 'postgres';
587
588 --
589 -- TOC entry 3 (OID 2200)
590 -- Name: SCHEMA public; Type: COMMENT; Schema: -; Owner: postgres
591 --
592
593 COMMENT ON SCHEMA public IS 'Standard public namespace';
594
595