X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/686ce8f3e592a259d2cfc80699d9db9fd9557e97..28b4c624b884c06ef74dc2e86695abaa6cc268c9:/db/structure.sql diff --git a/db/structure.sql b/db/structure.sql index e0427e1d7..102a95cf2 100644 --- a/db/structure.sql +++ b/db/structure.sql @@ -44,7 +44,8 @@ SET search_path = public, pg_catalog; CREATE TYPE format_enum AS ENUM ( 'html', - 'markdown' + 'markdown', + 'text' ); @@ -60,6 +61,30 @@ CREATE TYPE gpx_visibility_enum AS ENUM ( ); +-- +-- Name: note_event_enum; Type: TYPE; Schema: public; Owner: - +-- + +CREATE TYPE note_event_enum AS ENUM ( + 'opened', + 'closed', + 'reopened', + 'commented', + 'hidden' +); + + +-- +-- Name: note_status_enum; Type: TYPE; Schema: public; Owner: - +-- + +CREATE TYPE note_status_enum AS ENUM ( + 'open', + 'closed', + 'hidden' +); + + -- -- Name: nwr_enum; Type: TYPE; Schema: public; Owner: - -- @@ -100,7 +125,7 @@ CREATE TYPE user_status_enum AS ENUM ( CREATE FUNCTION maptile_for_point(bigint, bigint, integer) RETURNS integer LANGUAGE c STRICT - AS '/srv/www/next.osm.compton.nu/db/functions/libpgosm.so', 'maptile_for_point'; + AS '/srv/www/notes.osm.compton.nu/db/functions/libpgosm.so', 'maptile_for_point'; -- @@ -109,7 +134,7 @@ CREATE FUNCTION maptile_for_point(bigint, bigint, integer) RETURNS integer CREATE FUNCTION tile_for_point(integer, integer) RETURNS bigint LANGUAGE c STRICT - AS '/srv/www/next.osm.compton.nu/db/functions/libpgosm.so', 'tile_for_point'; + AS '/srv/www/notes.osm.compton.nu/db/functions/libpgosm.so', 'tile_for_point'; -- @@ -118,7 +143,7 @@ CREATE FUNCTION tile_for_point(integer, integer) RETURNS bigint CREATE FUNCTION xid_to_int4(xid) RETURNS integer LANGUAGE c IMMUTABLE STRICT - AS '/srv/www/next.osm.compton.nu/db/functions/libpgosm.so', 'xid_to_int4'; + AS '/srv/www/notes.osm.compton.nu/db/functions/libpgosm.so', 'xid_to_int4'; SET default_tablespace = ''; @@ -217,8 +242,8 @@ CREATE TABLE client_applications ( key character varying(50), secret character varying(50), user_id integer, - created_at timestamp without time zone, - updated_at timestamp without time zone, + created_at timestamp without time zone NOT NULL, + updated_at timestamp without time zone NOT NULL, allow_read_prefs boolean DEFAULT false NOT NULL, allow_write_prefs boolean DEFAULT false NOT NULL, allow_write_diary boolean DEFAULT false NOT NULL, @@ -699,6 +724,78 @@ CREATE TABLE nodes ( ); +-- +-- Name: note_comments; Type: TABLE; Schema: public; Owner: -; Tablespace: +-- + +CREATE TABLE note_comments ( + id integer NOT NULL, + note_id bigint NOT NULL, + visible boolean NOT NULL, + created_at timestamp without time zone NOT NULL, + author_name character varying(255), + author_ip character varying(255), + author_id bigint, + body text, + event note_event_enum +); + + +-- +-- Name: note_comments_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE note_comments_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: note_comments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE note_comments_id_seq OWNED BY note_comments.id; + + +-- +-- Name: notes; Type: TABLE; Schema: public; Owner: -; Tablespace: +-- + +CREATE TABLE notes ( + id integer NOT NULL, + latitude integer NOT NULL, + longitude integer NOT NULL, + tile bigint NOT NULL, + updated_at timestamp without time zone NOT NULL, + created_at timestamp without time zone NOT NULL, + nearby_place character varying(255), + status note_status_enum NOT NULL, + closed_at timestamp without time zone +); + + +-- +-- Name: notes_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE notes_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: notes_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE notes_id_seq OWNED BY notes.id; + + -- -- Name: oauth_nonces; Type: TABLE; Schema: public; Owner: -; Tablespace: -- @@ -707,8 +804,8 @@ CREATE TABLE oauth_nonces ( id integer NOT NULL, nonce character varying(255), "timestamp" integer, - created_at timestamp without time zone, - updated_at timestamp without time zone + created_at timestamp without time zone NOT NULL, + updated_at timestamp without time zone NOT NULL ); @@ -744,8 +841,8 @@ CREATE TABLE oauth_tokens ( secret character varying(50), authorized_at timestamp without time zone, invalidated_at timestamp without time zone, - created_at timestamp without time zone, - updated_at timestamp without time zone, + created_at timestamp without time zone NOT NULL, + updated_at timestamp without time zone NOT NULL, allow_read_prefs boolean DEFAULT false NOT NULL, allow_write_prefs boolean DEFAULT false NOT NULL, allow_write_diary boolean DEFAULT false NOT NULL, @@ -873,8 +970,8 @@ CREATE TABLE user_blocks ( ends_at timestamp without time zone NOT NULL, needs_view boolean DEFAULT false NOT NULL, revoker_id bigint, - created_at timestamp without time zone, - updated_at timestamp without time zone, + created_at timestamp without time zone NOT NULL, + updated_at timestamp without time zone NOT NULL, reason_format format_enum DEFAULT 'html'::format_enum NOT NULL ); @@ -916,8 +1013,8 @@ CREATE TABLE user_preferences ( CREATE TABLE user_roles ( id integer NOT NULL, user_id bigint NOT NULL, - created_at timestamp without time zone, - updated_at timestamp without time zone, + created_at timestamp without time zone NOT NULL, + updated_at timestamp without time zone NOT NULL, role user_role_enum NOT NULL, granter_id bigint NOT NULL ); @@ -1002,10 +1099,11 @@ CREATE TABLE users ( openid_url character varying(255), preferred_editor character varying(255), terms_seen boolean DEFAULT false NOT NULL, - image_fingerprint character varying(255), description_format format_enum DEFAULT 'html'::format_enum NOT NULL, + image_fingerprint character varying(255), changesets_count integer DEFAULT 0 NOT NULL, - traces_count integer DEFAULT 0 NOT NULL + traces_count integer DEFAULT 0 NOT NULL, + diary_entries_count integer DEFAULT 0 NOT NULL ); @@ -1157,6 +1255,20 @@ ALTER TABLE ONLY gpx_files ALTER COLUMN id SET DEFAULT nextval('gpx_files_id_seq ALTER TABLE ONLY messages ALTER COLUMN id SET DEFAULT nextval('messages_id_seq'::regclass); +-- +-- Name: id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY note_comments ALTER COLUMN id SET DEFAULT nextval('note_comments_id_seq'::regclass); + + +-- +-- Name: id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY notes ALTER COLUMN id SET DEFAULT nextval('notes_id_seq'::regclass); + + -- -- Name: id; Type: DEFAULT; Schema: public; Owner: - -- @@ -1374,6 +1486,22 @@ ALTER TABLE ONLY nodes ADD CONSTRAINT nodes_pkey PRIMARY KEY (node_id, version); +-- +-- Name: note_comments_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: +-- + +ALTER TABLE ONLY note_comments + ADD CONSTRAINT note_comments_pkey PRIMARY KEY (id); + + +-- +-- Name: notes_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: +-- + +ALTER TABLE ONLY notes + ADD CONSTRAINT notes_pkey PRIMARY KEY (id); + + -- -- Name: oauth_nonces_pkey; Type: CONSTRAINT; Schema: public; Owner: -; Tablespace: -- @@ -1724,6 +1852,34 @@ CREATE INDEX nodes_tile_idx ON nodes USING btree (tile); CREATE INDEX nodes_timestamp_idx ON nodes USING btree ("timestamp"); +-- +-- Name: note_comments_note_id_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: +-- + +CREATE INDEX note_comments_note_id_idx ON note_comments USING btree (note_id); + + +-- +-- Name: notes_created_at_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: +-- + +CREATE INDEX notes_created_at_idx ON notes USING btree (created_at); + + +-- +-- Name: notes_tile_status_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: +-- + +CREATE INDEX notes_tile_status_idx ON notes USING btree (tile, status); + + +-- +-- Name: notes_updated_at_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: +-- + +CREATE INDEX notes_updated_at_idx ON notes USING btree (updated_at); + + -- -- Name: points_gpxid_idx; Type: INDEX; Schema: public; Owner: -; Tablespace: -- @@ -2058,6 +2214,22 @@ ALTER TABLE ONLY nodes ADD CONSTRAINT nodes_redaction_id_fkey FOREIGN KEY (redaction_id) REFERENCES redactions(id); +-- +-- Name: note_comments_author_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY note_comments + ADD CONSTRAINT note_comments_author_id_fkey FOREIGN KEY (author_id) REFERENCES users(id); + + +-- +-- Name: note_comments_note_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY note_comments + ADD CONSTRAINT note_comments_note_id_fkey FOREIGN KEY (note_id) REFERENCES notes(id); + + -- -- Name: oauth_tokens_client_application_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: - -- @@ -2242,6 +2414,10 @@ INSERT INTO schema_migrations (version) VALUES ('20101114011429'); INSERT INTO schema_migrations (version) VALUES ('20110322001319'); +INSERT INTO schema_migrations (version) VALUES ('20110508145337'); + +INSERT INTO schema_migrations (version) VALUES ('20110521142405'); + INSERT INTO schema_migrations (version) VALUES ('20110925112722'); INSERT INTO schema_migrations (version) VALUES ('20111116184519'); @@ -2266,6 +2442,8 @@ INSERT INTO schema_migrations (version) VALUES ('20120404205604'); INSERT INTO schema_migrations (version) VALUES ('20120808231205'); +INSERT INTO schema_migrations (version) VALUES ('20121005195010'); + INSERT INTO schema_migrations (version) VALUES ('21'); INSERT INTO schema_migrations (version) VALUES ('22'); @@ -2336,6 +2514,16 @@ INSERT INTO schema_migrations (version) VALUES ('51'); INSERT INTO schema_migrations (version) VALUES ('52'); +INSERT INTO schema_migrations (version) VALUES ('53'); + +INSERT INTO schema_migrations (version) VALUES ('54'); + +INSERT INTO schema_migrations (version) VALUES ('55'); + +INSERT INTO schema_migrations (version) VALUES ('56'); + +INSERT INTO schema_migrations (version) VALUES ('57'); + INSERT INTO schema_migrations (version) VALUES ('6'); INSERT INTO schema_migrations (version) VALUES ('7');