liquid_feedback_core

changeset 38:c78ab22c4870 beta24

Added missing DELETEs in function "delete_private_data"(); Fixed wrong COMMENT statement for table "member_relation_setting"
(includes new file update/core-update.beta23-beta24.sql)
author jbe
date Mon Mar 08 14:23:54 2010 +0100 (2010-03-08)
parents 28dde4909a35
children 0e429def4e8d
files core.sql update/core-update.beta23-beta24.sql
line diff
     1.1 --- a/core.sql	Thu Mar 04 00:51:12 2010 +0100
     1.2 +++ b/core.sql	Mon Mar 08 14:23:54 2010 +0100
     1.3 @@ -6,7 +6,7 @@
     1.4  BEGIN;
     1.5  
     1.6  CREATE VIEW "liquid_feedback_version" AS
     1.7 -  SELECT * FROM (VALUES ('beta23', NULL, NULL, NULL))
     1.8 +  SELECT * FROM (VALUES ('beta24', NULL, NULL, NULL))
     1.9    AS "subquery"("string", "major", "minor", "revision");
    1.10  
    1.11  
    1.12 @@ -150,7 +150,7 @@
    1.13          "value"                 TEXT            NOT NULL );
    1.14  CREATE INDEX "setting_key_idx" ON "setting" ("key");
    1.15  
    1.16 -COMMENT ON TABLE "setting" IS 'Place to store a frontend specific settings for members as a string';
    1.17 +COMMENT ON TABLE "setting" IS 'Place to store a frontend specific setting for members as a string';
    1.18  
    1.19  COMMENT ON COLUMN "setting"."key" IS 'Name of the setting, preceded by a frontend specific prefix';
    1.20  
    1.21 @@ -177,7 +177,7 @@
    1.22          "other_member_id"       INT4            REFERENCES "member" ("id") ON DELETE CASCADE ON UPDATE CASCADE,
    1.23          "value"                 TEXT            NOT NULL );
    1.24  
    1.25 -COMMENT ON TABLE "setting" IS 'Place to store a frontend specific settings related to relations between members as a string';
    1.26 +COMMENT ON TABLE "member_relation_setting" IS 'Place to store a frontend specific setting related to relations between members as a string';
    1.27  
    1.28  
    1.29  CREATE TYPE "member_image_type" AS ENUM ('photo', 'avatar');
    1.30 @@ -3207,11 +3207,18 @@
    1.31          "external_posts"               = NULL,
    1.32          "statement"                    = NULL;
    1.33        -- "text_search_data" is updated by triggers
    1.34 -      DELETE FROM "session";
    1.35 +      UPDATE "member_history" SET "login" = 'login' || "member_id"::text;
    1.36        DELETE FROM "invite_code";
    1.37 +      DELETE FROM "setting";
    1.38 +      DELETE FROM "setting_map";
    1.39 +      DELETE FROM "member_relation_setting";
    1.40 +      DELETE FROM "member_image";
    1.41        DELETE FROM "contact";
    1.42 -      DELETE FROM "setting";
    1.43 -      DELETE FROM "member_image";
    1.44 +      DELETE FROM "session";
    1.45 +      DELETE FROM "area_setting";
    1.46 +      DELETE FROM "issue_setting";
    1.47 +      DELETE FROM "initiative_setting";
    1.48 +      DELETE FROM "suggestion_setting";
    1.49        DELETE FROM "direct_voter" USING "issue"
    1.50          WHERE "direct_voter"."issue_id" = "issue"."id"
    1.51          AND "issue"."closed" ISNULL;
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/update/core-update.beta23-beta24.sql	Mon Mar 08 14:23:54 2010 +0100
     2.3 @@ -0,0 +1,60 @@
     2.4 +BEGIN;
     2.5 +
     2.6 +CREATE OR REPLACE VIEW "liquid_feedback_version" AS
     2.7 +  SELECT * FROM (VALUES ('beta24', NULL, NULL, NULL))
     2.8 +  AS "subquery"("string", "major", "minor", "revision");
     2.9 +
    2.10 +COMMENT ON TABLE "setting" IS 'Place to store a frontend specific setting for members as a string';
    2.11 +
    2.12 +COMMENT ON TABLE "member_relation_setting" IS 'Place to store a frontend specific setting related to relations between members as a string';
    2.13 +
    2.14 +CREATE OR REPLACE FUNCTION "delete_private_data"()
    2.15 +  RETURNS VOID
    2.16 +  LANGUAGE 'plpgsql' VOLATILE AS $$
    2.17 +    DECLARE
    2.18 +      "issue_id_v" "issue"."id"%TYPE;
    2.19 +    BEGIN
    2.20 +      UPDATE "member" SET
    2.21 +        "login"                        = 'login' || "id"::text,
    2.22 +        "password"                     = NULL,
    2.23 +        "notify_email"                 = NULL,
    2.24 +        "notify_email_unconfirmed"     = NULL,
    2.25 +        "notify_email_secret"          = NULL,
    2.26 +        "notify_email_secret_expiry"   = NULL,
    2.27 +        "password_reset_secret"        = NULL,
    2.28 +        "password_reset_secret_expiry" = NULL,
    2.29 +        "organizational_unit"          = NULL,
    2.30 +        "internal_posts"               = NULL,
    2.31 +        "realname"                     = NULL,
    2.32 +        "birthday"                     = NULL,
    2.33 +        "address"                      = NULL,
    2.34 +        "email"                        = NULL,
    2.35 +        "xmpp_address"                 = NULL,
    2.36 +        "website"                      = NULL,
    2.37 +        "phone"                        = NULL,
    2.38 +        "mobile_phone"                 = NULL,
    2.39 +        "profession"                   = NULL,
    2.40 +        "external_memberships"         = NULL,
    2.41 +        "external_posts"               = NULL,
    2.42 +        "statement"                    = NULL;
    2.43 +      -- "text_search_data" is updated by triggers
    2.44 +      UPDATE "member_history" SET "login" = 'login' || "member_id"::text;
    2.45 +      DELETE FROM "invite_code";
    2.46 +      DELETE FROM "setting";
    2.47 +      DELETE FROM "setting_map";
    2.48 +      DELETE FROM "member_relation_setting";
    2.49 +      DELETE FROM "member_image";
    2.50 +      DELETE FROM "contact";
    2.51 +      DELETE FROM "session";
    2.52 +      DELETE FROM "area_setting";
    2.53 +      DELETE FROM "issue_setting";
    2.54 +      DELETE FROM "initiative_setting";
    2.55 +      DELETE FROM "suggestion_setting";
    2.56 +      DELETE FROM "direct_voter" USING "issue"
    2.57 +        WHERE "direct_voter"."issue_id" = "issue"."id"
    2.58 +        AND "issue"."closed" ISNULL;
    2.59 +      RETURN;
    2.60 +    END;
    2.61 +  $$;
    2.62 +
    2.63 +COMMIT;

Impressum / About Us