# HG changeset patch # User jbe # Date 1498485266 -7200 # Node ID 750b0be5acb6102eb25f4cffba8f22ba2ea473fb # Parent 8b6433096a58574ed8ca30c828158104d9b4438a Work on unit/area/policy events: added column "policy_id" to "event" table, added new "event_type"s diff -r 8b6433096a58 -r 750b0be5acb6 core.sql --- a/core.sql Sun Jun 18 02:24:50 2017 +0200 +++ b/core.sql Mon Jun 26 15:54:26 2017 +0200 @@ -738,6 +738,7 @@ CREATE TABLE "issue" ( UNIQUE ("area_id", "id"), -- index needed for foreign-key on table "event" + UNIQUE ("policy_id", "id"), -- index needed for foreign-key on table "event" "id" SERIAL4 PRIMARY KEY, "area_id" INT4 NOT NULL REFERENCES "area" ("id") ON DELETE CASCADE ON UPDATE CASCADE, "policy_id" INT4 NOT NULL REFERENCES "policy" ("id") ON DELETE RESTRICT ON UPDATE CASCADE, @@ -804,7 +805,6 @@ --("accepted" ISNULL OR "admission_snapshot_id" NOTNULL) AND ("half_frozen" ISNULL OR "half_freeze_snapshot_id" NOTNULL) AND ("fully_frozen" ISNULL OR "full_freeze_snapshot_id" NOTNULL) ) ); -CREATE INDEX "issue_policy_id_idx" ON "issue" ("policy_id"); CREATE INDEX "issue_state_idx" ON "issue" ("state"); CREATE INDEX "issue_created_idx" ON "issue" ("created"); CREATE INDEX "issue_accepted_idx" ON "issue" ("accepted"); @@ -1382,6 +1382,15 @@ CREATE TYPE "event_type" AS ENUM ( + 'unit_created', + 'unit_updated', + 'unit_removed', + 'subject_area_created', + 'subject_area_updated', + 'subject_area_removed', + 'policy_created', + 'policy_updated', + 'policy_removed', 'issue_state_changed', 'initiative_created_in_new_issue', 'initiative_created_in_existing_issue', @@ -1416,8 +1425,10 @@ "unit_id" INT4 REFERENCES "unit" ("id") ON DELETE CASCADE ON UPDATE CASCADE, "area_id" INT4, FOREIGN KEY ("unit_id", "area_id") REFERENCES "area" ("unit_id", "id") ON DELETE CASCADE ON UPDATE CASCADE, + "policy_id" INT4 REFERENCES "policy" ("id") ON DELETE CASCADE ON UPDATE CASCADE, "issue_id" INT4 REFERENCES "issue" ("id") ON DELETE CASCADE ON UPDATE CASCADE, FOREIGN KEY ("area_id", "issue_id") REFERENCES "issue" ("area_id", "id") ON DELETE CASCADE ON UPDATE CASCADE, + FOREIGN KEY ("policy_id", "issue_id") REFERENCES "issue" ("policy_id", "id") ON DELETE CASCADE ON UPDATE CASCADE, "state" "issue_state", "initiative_id" INT4, "draft_id" INT8, @@ -1444,6 +1455,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" ISNULL AND @@ -1465,6 +1477,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" NOTNULL AND @@ -1481,6 +1494,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" NOTNULL AND @@ -1497,6 +1511,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" NOTNULL AND @@ -1518,6 +1533,7 @@ "scope" ISNULL AND "unit_id" ISNULL AND "area_id" ISNULL AND + "policy_id" ISNULL AND "issue_id" ISNULL AND "state" ISNULL AND "initiative_id" ISNULL AND @@ -1534,6 +1550,7 @@ "scope" ISNULL AND "unit_id" ISNULL AND "area_id" ISNULL AND + "policy_id" ISNULL AND "issue_id" ISNULL AND "state" ISNULL AND "initiative_id" ISNULL AND @@ -1550,6 +1567,7 @@ "scope" ISNULL AND "unit_id" ISNULL AND "area_id" ISNULL AND + "policy_id" ISNULL AND "issue_id" ISNULL AND "state" ISNULL AND "initiative_id" ISNULL AND @@ -1566,6 +1584,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" ISNULL AND @@ -1582,6 +1601,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" NOTNULL AND @@ -1598,6 +1618,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" NOTNULL AND @@ -1614,6 +1635,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" NOTNULL AND @@ -1630,6 +1652,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" NOTNULL AND @@ -1647,6 +1670,7 @@ "scope" NOTNULL AND "unit_id" NOTNULL AND ("area_id" NOTNULL) = ("scope" != 'unit'::"delegation_scope") AND + "policy_id" ISNULL AND ("issue_id" NOTNULL) = ("scope" = 'issue'::"delegation_scope") AND ("state" NOTNULL) = ("scope" = 'issue'::"delegation_scope") AND "initiative_id" ISNULL AND @@ -1663,6 +1687,7 @@ "scope" ISNULL AND "unit_id" ISNULL AND "area_id" ISNULL AND + "policy_id" ISNULL AND "issue_id" ISNULL AND "state" ISNULL AND "initiative_id" ISNULL AND @@ -1768,10 +1793,11 @@ FOR SHARE; INSERT INTO "event" ( "event", - "unit_id", "area_id", "issue_id", "state" + "unit_id", "area_id", "policy_id", "issue_id", "state" ) VALUES ( 'issue_state_changed', - "area_row"."unit_id", NEW."area_id", NEW."id", NEW."state" + "area_row"."unit_id", NEW."area_id", NEW."policy_id", + NEW."id", NEW."state" ); END IF; RETURN NULL; @@ -1821,11 +1847,11 @@ END IF; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "draft_id" ) VALUES ( "event_v", NEW."author_id", - "area_row"."unit_id", "issue_row"."area_id", + "area_row"."unit_id", "issue_row"."area_id", "issue_row"."policy_id", "initiative_row"."issue_id", "issue_row"."state", NEW."initiative_id", NEW."id" ); @@ -1858,11 +1884,12 @@ WHERE "initiative_id" = NEW."id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "draft_id" ) VALUES ( 'initiative_revoked', NEW."revoked_by_member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", NEW."issue_id", "issue_row"."state", NEW."id", "draft_id_v" ); @@ -1895,11 +1922,11 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "suggestion_id" ) VALUES ( 'suggestion_created', NEW."author_id", - "area_row"."unit_id", "issue_row"."area_id", + "area_row"."unit_id", "issue_row"."area_id", "issue_row"."policy_id", "initiative_row"."issue_id", "issue_row"."state", NEW."initiative_id", NEW."id" ); @@ -1932,11 +1959,12 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "suggestion_id" ) VALUES ( 'suggestion_removed', "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", "initiative_row"."issue_id", "issue_row"."state", OLD."initiative_id", OLD."id" ); @@ -1984,6 +2012,7 @@ END IF; IF OLD."activated" NOTNULL AND + -- TODO: NEW."activated" ISNULL? OLD."login" NOTNULL? NEW."last_login" ISNULL AND NEW."login" ISNULL AND NEW."authority_login" ISNULL AND @@ -2100,11 +2129,12 @@ IF "issue_row"."id" NOTNULL THEN INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "boolean_value" ) VALUES ( 'interest', OLD."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", OLD."issue_id", "issue_row"."state", FALSE ); @@ -2117,11 +2147,12 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "boolean_value" ) VALUES ( 'interest', NEW."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", NEW."issue_id", "issue_row"."state", TRUE ); @@ -2166,11 +2197,12 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "boolean_value" ) VALUES ( 'initiator', OLD."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", "issue_row"."id", "issue_row"."state", OLD."initiative_id", FALSE ); @@ -2187,11 +2219,12 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "boolean_value" ) VALUES ( 'initiator', NEW."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", "issue_row"."id", "issue_row"."state", NEW."initiative_id", TRUE ); @@ -2228,11 +2261,12 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "draft_id" ) VALUES ( 'support_updated', NEW."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", "issue_row"."id", "issue_row"."state", NEW."initiative_id", NEW."draft_id" ); @@ -2251,11 +2285,12 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "boolean_value" ) VALUES ( 'support', OLD."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", "issue_row"."id", "issue_row"."state", OLD."initiative_id", FALSE ); @@ -2268,11 +2303,12 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "draft_id", "boolean_value" ) VALUES ( 'support', NEW."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", "issue_row"."id", "issue_row"."state", NEW."initiative_id", NEW."draft_id", TRUE ); @@ -2325,12 +2361,13 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "suggestion_id", "boolean_value", "numeric_value" ) VALUES ( 'suggestion_rated', OLD."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", "initiative_row"."issue_id", "issue_row"."state", OLD."initiative_id", OLD."suggestion_id", NULL, 0 @@ -2346,12 +2383,13 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "suggestion_id", "boolean_value", "numeric_value" ) VALUES ( 'suggestion_rated', NEW."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", "initiative_row"."issue_id", "issue_row"."state", NEW."initiative_id", NEW."suggestion_id", NEW."fulfilled", NEW."degree" diff -r 8b6433096a58 -r 750b0be5acb6 update/core-update.v3.2.2-v4.0.0.sql --- a/update/core-update.v3.2.2-v4.0.0.sql Sun Jun 18 02:24:50 2017 +0200 +++ b/update/core-update.v3.2.2-v4.0.0.sql Mon Jun 26 15:54:26 2017 +0200 @@ -1,3 +1,12 @@ +ALTER TYPE "event_type" ADD VALUE IF NOT EXISTS 'unit_created'; +ALTER TYPE "event_type" ADD VALUE IF NOT EXISTS 'unit_updated'; +ALTER TYPE "event_type" ADD VALUE IF NOT EXISTS 'unit_removed'; +ALTER TYPE "event_type" ADD VALUE IF NOT EXISTS 'subject_area_created'; +ALTER TYPE "event_type" ADD VALUE IF NOT EXISTS 'subject_area_updated'; +ALTER TYPE "event_type" ADD VALUE IF NOT EXISTS 'subject_area_removed'; +ALTER TYPE "event_type" ADD VALUE IF NOT EXISTS 'policy_created'; +ALTER TYPE "event_type" ADD VALUE IF NOT EXISTS 'policy_updated'; +ALTER TYPE "event_type" ADD VALUE IF NOT EXISTS 'policy_removed'; ALTER TYPE "event_type" ADD VALUE IF NOT EXISTS 'suggestion_removed'; ALTER TYPE "event_type" ADD VALUE IF NOT EXISTS 'member_activated'; ALTER TYPE "event_type" ADD VALUE IF NOT EXISTS 'member_removed'; @@ -472,6 +481,8 @@ ALTER TABLE "issue" ADD UNIQUE ("area_id", "id"); DROP INDEX "issue_area_id_idx"; +ALTER TABLE "issue" ADD UNIQUE ("policy_id", "id"); +DROP INDEX "issue_policy_id_idx"; ALTER TABLE "issue" RENAME COLUMN "snapshot" TO "calculated"; @@ -653,6 +664,7 @@ ALTER TABLE "event" ADD COLUMN "scope" "delegation_scope"; ALTER TABLE "event" ADD COLUMN "unit_id" INT4 REFERENCES "unit" ("id") ON DELETE CASCADE ON UPDATE CASCADE; ALTER TABLE "event" ADD COLUMN "area_id" INT4; +ALTER TABLE "event" ADD COLUMN "policy_id" INT4 REFERENCES "policy" ("id") ON DELETE CASCADE ON UPDATE CASCADE; ALTER TABLE "event" ADD COLUMN "boolean_value" BOOLEAN; ALTER TABLE "event" ADD COLUMN "numeric_value" INT4; ALTER TABLE "event" ADD COLUMN "text_value" TEXT; @@ -660,6 +672,7 @@ ALTER TABLE "event" ADD FOREIGN KEY ("unit_id", "area_id") REFERENCES "area" ("unit_id", "id") ON DELETE CASCADE ON UPDATE CASCADE; ALTER TABLE "event" ADD FOREIGN KEY ("area_id", "issue_id") REFERENCES "issue" ("area_id", "id") ON DELETE CASCADE ON UPDATE CASCADE; +ALTER TABLE "event" ADD FOREIGN KEY ("policy_id", "issue_id") REFERENCES "issue" ("policy_id", "id") ON DELETE CASCADE ON UPDATE CASCADE; ALTER TABLE "event" DROP CONSTRAINT "event_initiative_id_fkey1"; ALTER TABLE "event" DROP CONSTRAINT "null_constr_for_issue_state_changed"; @@ -677,6 +690,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" ISNULL AND @@ -698,6 +712,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" NOTNULL AND @@ -714,6 +729,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" NOTNULL AND @@ -730,6 +746,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" NOTNULL AND @@ -751,6 +768,7 @@ "scope" ISNULL AND "unit_id" ISNULL AND "area_id" ISNULL AND + "policy_id" ISNULL AND "issue_id" ISNULL AND "state" ISNULL AND "initiative_id" ISNULL AND @@ -767,6 +785,7 @@ "scope" ISNULL AND "unit_id" ISNULL AND "area_id" ISNULL AND + "policy_id" ISNULL AND "issue_id" ISNULL AND "state" ISNULL AND "initiative_id" ISNULL AND @@ -783,6 +802,7 @@ "scope" ISNULL AND "unit_id" ISNULL AND "area_id" ISNULL AND + "policy_id" ISNULL AND "issue_id" ISNULL AND "state" ISNULL AND "initiative_id" ISNULL AND @@ -799,6 +819,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" ISNULL AND @@ -815,6 +836,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" NOTNULL AND @@ -831,6 +853,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" NOTNULL AND @@ -847,6 +870,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" NOTNULL AND @@ -863,6 +887,7 @@ "scope" ISNULL AND "unit_id" NOTNULL AND "area_id" NOTNULL AND + "policy_id" NOTNULL AND "issue_id" NOTNULL AND "state" NOTNULL AND "initiative_id" NOTNULL AND @@ -880,6 +905,7 @@ "scope" NOTNULL AND "unit_id" NOTNULL AND ("area_id" NOTNULL) = ("scope" != 'unit'::"delegation_scope") AND + "policy_id" ISNULL AND ("issue_id" NOTNULL) = ("scope" = 'issue'::"delegation_scope") AND ("state" NOTNULL) = ("scope" = 'issue'::"delegation_scope") AND "initiative_id" ISNULL AND @@ -896,6 +922,7 @@ "scope" ISNULL AND "unit_id" ISNULL AND "area_id" ISNULL AND + "policy_id" ISNULL AND "issue_id" ISNULL AND "state" ISNULL AND "initiative_id" ISNULL AND @@ -925,10 +952,11 @@ FOR SHARE; INSERT INTO "event" ( "event", - "unit_id", "area_id", "issue_id", "state" + "unit_id", "area_id", "policy_id", "issue_id", "state" ) VALUES ( 'issue_state_changed', - "area_row"."unit_id", NEW."area_id", NEW."id", NEW."state" + "area_row"."unit_id", NEW."area_id", NEW."policy_id", + NEW."id", NEW."state" ); END IF; RETURN NULL; @@ -971,11 +999,11 @@ END IF; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "draft_id" ) VALUES ( "event_v", NEW."author_id", - "area_row"."unit_id", "issue_row"."area_id", + "area_row"."unit_id", "issue_row"."area_id", "issue_row"."policy_id", "initiative_row"."issue_id", "issue_row"."state", NEW."initiative_id", NEW."id" ); @@ -1001,11 +1029,12 @@ WHERE "initiative_id" = NEW."id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "draft_id" ) VALUES ( 'initiative_revoked', NEW."revoked_by_member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", NEW."issue_id", "issue_row"."state", NEW."id", "draft_id_v" ); @@ -1031,11 +1060,11 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "suggestion_id" ) VALUES ( 'suggestion_created', NEW."author_id", - "area_row"."unit_id", "issue_row"."area_id", + "area_row"."unit_id", "issue_row"."area_id", "issue_row"."policy_id", "initiative_row"."issue_id", "issue_row"."state", NEW."initiative_id", NEW."id" ); @@ -1061,11 +1090,12 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "suggestion_id" ) VALUES ( 'suggestion_removed', "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", "initiative_row"."issue_id", "issue_row"."state", OLD."initiative_id", OLD."id" ); @@ -1229,11 +1259,12 @@ IF "issue_row"."id" NOTNULL THEN INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "boolean_value" ) VALUES ( 'interest', OLD."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", OLD."issue_id", "issue_row"."state", FALSE ); @@ -1246,11 +1277,12 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "boolean_value" ) VALUES ( 'interest', NEW."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", NEW."issue_id", "issue_row"."state", TRUE ); @@ -1295,11 +1327,12 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "boolean_value" ) VALUES ( 'initiator', OLD."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", "issue_row"."id", "issue_row"."state", OLD."initiative_id", FALSE ); @@ -1316,11 +1349,12 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "boolean_value" ) VALUES ( 'initiator', NEW."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", "issue_row"."id", "issue_row"."state", NEW."initiative_id", TRUE ); @@ -1357,11 +1391,12 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "draft_id" ) VALUES ( 'support_updated', NEW."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", "issue_row"."id", "issue_row"."state", NEW."initiative_id", NEW."draft_id" ); @@ -1380,11 +1415,12 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "boolean_value" ) VALUES ( 'support', OLD."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", "issue_row"."id", "issue_row"."state", OLD."initiative_id", FALSE ); @@ -1397,11 +1433,12 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "draft_id", "boolean_value" ) VALUES ( 'support', NEW."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", "issue_row"."id", "issue_row"."state", NEW."initiative_id", NEW."draft_id", TRUE ); @@ -1454,12 +1491,13 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "suggestion_id", "boolean_value", "numeric_value" ) VALUES ( 'suggestion_rated', OLD."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", "initiative_row"."issue_id", "issue_row"."state", OLD."initiative_id", OLD."suggestion_id", NULL, 0 @@ -1475,12 +1513,13 @@ WHERE "id" = "issue_row"."area_id" FOR SHARE; INSERT INTO "event" ( "event", "member_id", - "unit_id", "area_id", "issue_id", "state", + "unit_id", "area_id", "policy_id", "issue_id", "state", "initiative_id", "suggestion_id", "boolean_value", "numeric_value" ) VALUES ( 'suggestion_rated', NEW."member_id", "area_row"."unit_id", "issue_row"."area_id", + "issue_row"."policy_id", "initiative_row"."issue_id", "issue_row"."state", NEW."initiative_id", NEW."suggestion_id", NEW."fulfilled", NEW."degree"