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