Sitemenu added to database (copied from EWP).
authorrich <rich>
Wed, 8 Sep 2004 13:09:05 +0000 (13:09 +0000)
committerrich <rich>
Wed, 8 Sep 2004 13:09:05 +0000 (13:09 +0000)
cocanwiki.sql
scripts/edit.ml
scripts/edit_page_css.ml
scripts/restore.ml

index 9471c7e..7724333 100644 (file)
@@ -52,7 +52,7 @@ GRANT ALL ON TABLE pages TO "www-data";
 
 
 --
--- TOC entry 23 (OID 536004)
+-- TOC entry 25 (OID 536004)
 -- Name: pages_id_seq; Type: ACL; Schema: public; Owner: rich
 --
 
@@ -85,7 +85,7 @@ GRANT ALL ON TABLE contents TO "www-data";
 
 
 --
--- TOC entry 24 (OID 536021)
+-- TOC entry 26 (OID 536021)
 -- Name: contents_id_seq; Type: ACL; Schema: public; Owner: rich
 --
 
@@ -117,7 +117,7 @@ GRANT ALL ON TABLE hosts TO "www-data";
 
 
 --
--- TOC entry 25 (OID 536371)
+-- TOC entry 27 (OID 536371)
 -- Name: hosts_id_seq; Type: ACL; Schema: public; Owner: rich
 --
 
@@ -202,7 +202,7 @@ GRANT ALL ON TABLE images TO "www-data";
 
 
 --
--- TOC entry 26 (OID 537151)
+-- TOC entry 28 (OID 537151)
 -- Name: images_id_seq; Type: ACL; Schema: public; Owner: rich
 --
 
@@ -237,7 +237,7 @@ GRANT ALL ON TABLE files TO "www-data";
 
 
 --
--- TOC entry 27 (OID 537166)
+-- TOC entry 29 (OID 537166)
 -- Name: files_id_seq; Type: ACL; Schema: public; Owner: rich
 --
 
@@ -272,7 +272,7 @@ GRANT ALL ON TABLE users TO "www-data";
 
 
 --
--- TOC entry 28 (OID 540816)
+-- TOC entry 30 (OID 540816)
 -- Name: users_id_seq; Type: ACL; Schema: public; Owner: rich
 --
 
@@ -301,7 +301,29 @@ GRANT ALL ON TABLE usercookies TO "www-data";
 
 
 --
--- TOC entry 33 (OID 536388)
+-- TOC entry 23 (OID 540961)
+-- Name: sitemenu; Type: TABLE; Schema: public; Owner: rich
+--
+
+CREATE TABLE sitemenu (
+    hostid integer NOT NULL,
+    url text NOT NULL,
+    label text NOT NULL,
+    ordering integer NOT NULL
+);
+
+
+--
+-- TOC entry 24 (OID 540961)
+-- Name: sitemenu; Type: ACL; Schema: public; Owner: rich
+--
+
+REVOKE ALL ON TABLE sitemenu FROM PUBLIC;
+GRANT ALL ON TABLE sitemenu TO "www-data";
+
+
+--
+-- TOC entry 35 (OID 536388)
 -- Name: hostnames_hostid_name_uq; Type: INDEX; Schema: public; Owner: rich
 --
 
@@ -309,7 +331,7 @@ CREATE UNIQUE INDEX hostnames_hostid_name_uq ON hostnames USING btree (hostid, n
 
 
 --
--- TOC entry 34 (OID 536389)
+-- TOC entry 36 (OID 536389)
 -- Name: hostnams_name_uq; Type: INDEX; Schema: public; Owner: rich
 --
 
@@ -317,7 +339,7 @@ CREATE UNIQUE INDEX hostnams_name_uq ON hostnames USING btree (name);
 
 
 --
--- TOC entry 30 (OID 536419)
+-- TOC entry 32 (OID 536419)
 -- Name: pages_url_uq; Type: INDEX; Schema: public; Owner: rich
 --
 
@@ -325,7 +347,7 @@ CREATE UNIQUE INDEX pages_url_uq ON pages USING btree (hostid, url);
 
 
 --
--- TOC entry 35 (OID 536924)
+-- TOC entry 37 (OID 536924)
 -- Name: email_notify_email_uq; Type: INDEX; Schema: public; Owner: rich
 --
 
@@ -333,7 +355,7 @@ CREATE UNIQUE INDEX email_notify_email_uq ON email_notify USING btree (hostid, e
 
 
 --
--- TOC entry 36 (OID 540251)
+-- TOC entry 38 (OID 540251)
 -- Name: images_name_uq; Type: INDEX; Schema: public; Owner: rich
 --
 
@@ -341,7 +363,7 @@ CREATE UNIQUE INDEX images_name_uq ON images USING btree (hostid, name);
 
 
 --
--- TOC entry 38 (OID 540252)
+-- TOC entry 40 (OID 540252)
 -- Name: files_name_uq; Type: INDEX; Schema: public; Owner: rich
 --
 
@@ -349,7 +371,7 @@ CREATE UNIQUE INDEX files_name_uq ON files USING btree (hostid, name);
 
 
 --
--- TOC entry 41 (OID 540831)
+-- TOC entry 43 (OID 540831)
 -- Name: users_name_uq; Type: INDEX; Schema: public; Owner: rich
 --
 
@@ -357,7 +379,7 @@ CREATE UNIQUE INDEX users_name_uq ON users USING btree (hostid, name);
 
 
 --
--- TOC entry 40 (OID 540946)
+-- TOC entry 42 (OID 540946)
 -- Name: users_id_uq; Type: INDEX; Schema: public; Owner: rich
 --
 
@@ -365,7 +387,23 @@ CREATE UNIQUE INDEX users_id_uq ON users USING btree (hostid, id);
 
 
 --
--- TOC entry 29 (OID 536012)
+-- TOC entry 45 (OID 540970)
+-- Name: sitemenu_ordering_uq; Type: INDEX; Schema: public; Owner: rich
+--
+
+CREATE UNIQUE INDEX sitemenu_ordering_uq ON sitemenu USING btree (hostid, ordering);
+
+
+--
+-- TOC entry 46 (OID 540971)
+-- Name: sitemenu_url_uq; Type: INDEX; Schema: public; Owner: rich
+--
+
+CREATE UNIQUE INDEX sitemenu_url_uq ON sitemenu USING btree (hostid, url);
+
+
+--
+-- TOC entry 31 (OID 536012)
 -- Name: pages_pkey; Type: CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -374,7 +412,7 @@ ALTER TABLE ONLY pages
 
 
 --
--- TOC entry 31 (OID 536027)
+-- TOC entry 33 (OID 536027)
 -- Name: contents_pkey; Type: CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -383,7 +421,7 @@ ALTER TABLE ONLY contents
 
 
 --
--- TOC entry 32 (OID 536377)
+-- TOC entry 34 (OID 536377)
 -- Name: hosts_pkey; Type: CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -392,7 +430,7 @@ ALTER TABLE ONLY hosts
 
 
 --
--- TOC entry 37 (OID 537158)
+-- TOC entry 39 (OID 537158)
 -- Name: images_pkey; Type: CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -401,7 +439,7 @@ ALTER TABLE ONLY images
 
 
 --
--- TOC entry 39 (OID 537173)
+-- TOC entry 41 (OID 537173)
 -- Name: files_pkey; Type: CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -410,7 +448,7 @@ ALTER TABLE ONLY files
 
 
 --
--- TOC entry 42 (OID 540825)
+-- TOC entry 44 (OID 540825)
 -- Name: users_pkey; Type: CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -419,7 +457,7 @@ ALTER TABLE ONLY users
 
 
 --
--- TOC entry 47 (OID 536029)
+-- TOC entry 51 (OID 536029)
 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -428,7 +466,7 @@ ALTER TABLE ONLY contents
 
 
 --
--- TOC entry 49 (OID 536384)
+-- TOC entry 53 (OID 536384)
 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -437,7 +475,7 @@ ALTER TABLE ONLY hostnames
 
 
 --
--- TOC entry 48 (OID 536394)
+-- TOC entry 52 (OID 536394)
 -- Name: hosts_hostname_cn; Type: FK CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -446,7 +484,7 @@ ALTER TABLE ONLY hosts
 
 
 --
--- TOC entry 43 (OID 536404)
+-- TOC entry 47 (OID 536404)
 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -455,7 +493,7 @@ ALTER TABLE ONLY pages
 
 
 --
--- TOC entry 50 (OID 536920)
+-- TOC entry 54 (OID 536920)
 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -464,7 +502,7 @@ ALTER TABLE ONLY email_notify
 
 
 --
--- TOC entry 51 (OID 537160)
+-- TOC entry 55 (OID 537160)
 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -473,7 +511,7 @@ ALTER TABLE ONLY images
 
 
 --
--- TOC entry 52 (OID 537175)
+-- TOC entry 56 (OID 537175)
 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -482,7 +520,7 @@ ALTER TABLE ONLY files
 
 
 --
--- TOC entry 44 (OID 539155)
+-- TOC entry 48 (OID 539155)
 -- Name: pages_redirect_cn; Type: FK CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -491,7 +529,7 @@ ALTER TABLE ONLY pages
 
 
 --
--- TOC entry 53 (OID 540827)
+-- TOC entry 57 (OID 540827)
 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -500,7 +538,7 @@ ALTER TABLE ONLY users
 
 
 --
--- TOC entry 54 (OID 540837)
+-- TOC entry 58 (OID 540837)
 -- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -509,7 +547,7 @@ ALTER TABLE ONLY usercookies
 
 
 --
--- TOC entry 45 (OID 540942)
+-- TOC entry 49 (OID 540942)
 -- Name: $2; Type: FK CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -518,7 +556,7 @@ ALTER TABLE ONLY pages
 
 
 --
--- TOC entry 46 (OID 540947)
+-- TOC entry 50 (OID 540947)
 -- Name: pages_user_cn; Type: FK CONSTRAINT; Schema: public; Owner: rich
 --
 
@@ -526,6 +564,24 @@ ALTER TABLE ONLY pages
     ADD CONSTRAINT pages_user_cn FOREIGN KEY (hostid, logged_user) REFERENCES users(hostid, id);
 
 
+--
+-- TOC entry 59 (OID 540966)
+-- Name: $1; Type: FK CONSTRAINT; Schema: public; Owner: rich
+--
+
+ALTER TABLE ONLY sitemenu
+    ADD CONSTRAINT "$1" FOREIGN KEY (hostid) REFERENCES hosts(id);
+
+
+--
+-- TOC entry 60 (OID 540972)
+-- Name: sitemenu_url_cn; Type: FK CONSTRAINT; Schema: public; Owner: rich
+--
+
+ALTER TABLE ONLY sitemenu
+    ADD CONSTRAINT sitemenu_url_cn FOREIGN KEY (hostid, url) REFERENCES pages(hostid, url) DEFERRABLE;
+
+
 SET SESSION AUTHORIZATION 'postgres';
 
 --
index 410e9e0..0d22746 100644 (file)
@@ -1,7 +1,7 @@
 (* COCANWIKI scripts.
  * Written by Richard W.M. Jones <rich@merjis.com>.
  * Copyright (C) 2004 Merjis Ltd.
- * $Id: edit.ml,v 1.4 2004/09/08 09:54:28 rich Exp $
+ * $Id: edit.ml,v 1.5 2004/09/08 13:09:05 rich Exp $
  *)
 
 open Apache
@@ -369,7 +369,8 @@ let run r (q : cgi) (dbh : Dbi.connection) (hostid, hostname, _) _ =
        * temporarily fail on the next UPDATE.
        *)
       let sth =
-       dbh#prepare_cached "set constraints pages_redirect_cn deferred" in
+       dbh#prepare_cached
+         "set constraints pages_redirect_cn, sitemenu_url_cn deferred" in
       sth#execute [];
 
       (* Mark the old page as deleted.  NB. There is a small race
index 9c91d32..38da4a1 100644 (file)
@@ -1,7 +1,7 @@
 (* COCANWIKI scripts.
  * Written by Richard W.M. Jones <rich@merjis.com>.
  * Copyright (C) 2004 Merjis Ltd.
- * $Id: edit_page_css.ml,v 1.4 2004/09/08 09:54:28 rich Exp $
+ * $Id: edit_page_css.ml,v 1.5 2004/09/08 13:09:05 rich Exp $
  *)
 
 open Apache
@@ -41,7 +41,8 @@ let run r (q : cgi) (dbh : Dbi.connection) (hostid, hostname, _) _ =
          id, title, description, creation_date, redirect
       | _ -> assert false in
 
-  let sth = dbh#prepare_cached "set constraints pages_redirect_cn deferred" in
+  let sth = dbh#prepare_cached
+             "set constraints pages_redirect_cn, sitemenu_url_cn deferred" in
   sth#execute [];
 
   let sth = dbh#prepare_cached "update pages set url_deleted = url,
index 274a3e6..47f3cf9 100644 (file)
@@ -1,7 +1,7 @@
 (* COCANWIKI scripts.
  * Written by Richard W.M. Jones <rich@merjis.com>.
  * Copyright (C) 2004 Merjis Ltd.
- * $Id: restore.ml,v 1.4 2004/09/08 09:54:28 rich Exp $
+ * $Id: restore.ml,v 1.5 2004/09/08 13:09:05 rich Exp $
  *)
 
 open Apache
@@ -39,7 +39,8 @@ let run r (q : cgi) (dbh : Dbi.connection) (hostid, hostname, _) _ =
        | _ -> assert false in
 
     let sth =
-      dbh#prepare_cached "set constraints pages_redirect_cn deferred" in
+      dbh#prepare_cached
+       "set constraints pages_redirect_cn, sitemenu_url_cn deferred" in
     sth#execute [];
 
     let sth = dbh#prepare_cached "update pages set url_deleted = url,