liquid_feedback_core

annotate update/core-update.beta23-beta24.sql @ 113:76ffbafb23b5

Work on event and notification system; Added more "issue_state"s; Replaced "ignored_issue" table; Removal of sessions in "delete_member" function

- "state" column of table "event" is now always filled
- splitted revocation state into 3 new "issue_state"s:
- 'canceled_revoked_before_accepted'
- 'canceled_after_revocation_during_discussion'
- 'canceled_after_revocation_during_verification'
- Added columns "notify_level" and "notify_event_id" to "member" table
- Replaced view "ignored_issue" by three new views:
- TABLE "ignored_member"
- TABLE "ignored_initiative"
- TABLE "non_voter"
- Function "delete_member" now removes "session"s
- Added member specific views on events:
- VIEW "event_seen_by_member"
- VIEW "pending_notification"
author jbe
date Sat Mar 05 22:05:13 2011 +0100 (2011-03-05)
parents c78ab22c4870
children
rev   line source
jbe@38 1 BEGIN;
jbe@38 2
jbe@38 3 CREATE OR REPLACE VIEW "liquid_feedback_version" AS
jbe@38 4 SELECT * FROM (VALUES ('beta24', NULL, NULL, NULL))
jbe@38 5 AS "subquery"("string", "major", "minor", "revision");
jbe@38 6
jbe@38 7 COMMENT ON TABLE "setting" IS 'Place to store a frontend specific setting for members as a string';
jbe@38 8
jbe@38 9 COMMENT ON TABLE "member_relation_setting" IS 'Place to store a frontend specific setting related to relations between members as a string';
jbe@38 10
jbe@38 11 CREATE OR REPLACE FUNCTION "delete_private_data"()
jbe@38 12 RETURNS VOID
jbe@38 13 LANGUAGE 'plpgsql' VOLATILE AS $$
jbe@38 14 DECLARE
jbe@38 15 "issue_id_v" "issue"."id"%TYPE;
jbe@38 16 BEGIN
jbe@38 17 UPDATE "member" SET
jbe@38 18 "login" = 'login' || "id"::text,
jbe@38 19 "password" = NULL,
jbe@38 20 "notify_email" = NULL,
jbe@38 21 "notify_email_unconfirmed" = NULL,
jbe@38 22 "notify_email_secret" = NULL,
jbe@38 23 "notify_email_secret_expiry" = NULL,
jbe@38 24 "password_reset_secret" = NULL,
jbe@38 25 "password_reset_secret_expiry" = NULL,
jbe@38 26 "organizational_unit" = NULL,
jbe@38 27 "internal_posts" = NULL,
jbe@38 28 "realname" = NULL,
jbe@38 29 "birthday" = NULL,
jbe@38 30 "address" = NULL,
jbe@38 31 "email" = NULL,
jbe@38 32 "xmpp_address" = NULL,
jbe@38 33 "website" = NULL,
jbe@38 34 "phone" = NULL,
jbe@38 35 "mobile_phone" = NULL,
jbe@38 36 "profession" = NULL,
jbe@38 37 "external_memberships" = NULL,
jbe@38 38 "external_posts" = NULL,
jbe@38 39 "statement" = NULL;
jbe@38 40 -- "text_search_data" is updated by triggers
jbe@38 41 UPDATE "member_history" SET "login" = 'login' || "member_id"::text;
jbe@38 42 DELETE FROM "invite_code";
jbe@38 43 DELETE FROM "setting";
jbe@38 44 DELETE FROM "setting_map";
jbe@38 45 DELETE FROM "member_relation_setting";
jbe@38 46 DELETE FROM "member_image";
jbe@38 47 DELETE FROM "contact";
jbe@38 48 DELETE FROM "session";
jbe@38 49 DELETE FROM "area_setting";
jbe@38 50 DELETE FROM "issue_setting";
jbe@38 51 DELETE FROM "initiative_setting";
jbe@38 52 DELETE FROM "suggestion_setting";
jbe@38 53 DELETE FROM "direct_voter" USING "issue"
jbe@38 54 WHERE "direct_voter"."issue_id" = "issue"."id"
jbe@38 55 AND "issue"."closed" ISNULL;
jbe@38 56 RETURN;
jbe@38 57 END;
jbe@38 58 $$;
jbe@38 59
jbe@38 60 COMMIT;

Impressum / About Us