liquid_feedback_frontend
annotate db/demodata.lua @ 6:8d91bccab0bf
Version beta2
Possibility to browse voters of a closed issue
Registration with invite code
Email confirmation and password recovery
Download function (for database dumps) added
Critical bug solved, which made it impossible to select your opinion on other peoples suggestions
Catching error, when trying to set an opinion on a suggestion which has been meanwhile deleted
Fixed wrong sorting order for "supporters" or "potential supporters"
Added format info for birthday (Error when entering dates in wrong format is NOT fixed in this release)
Strip space characters from certain fields and ensure they contain at least 3 characters
Showing grade in opinion/list as clear text instead of integer value
More information on initiative is displayed while voting
Colored notification box shown on pages of issues or initiatives which are currently in voting state
Changed default filter for issues to "Open"
Back link on suggestion page
Some optical changes
Removed wrong space character in LICENSE file
Possibility to browse voters of a closed issue
Registration with invite code
Email confirmation and password recovery
Download function (for database dumps) added
Critical bug solved, which made it impossible to select your opinion on other peoples suggestions
Catching error, when trying to set an opinion on a suggestion which has been meanwhile deleted
Fixed wrong sorting order for "supporters" or "potential supporters"
Added format info for birthday (Error when entering dates in wrong format is NOT fixed in this release)
Strip space characters from certain fields and ensure they contain at least 3 characters
Showing grade in opinion/list as clear text instead of integer value
More information on initiative is displayed while voting
Colored notification box shown on pages of issues or initiatives which are currently in voting state
Changed default filter for issues to "Open"
Back link on suggestion page
Some optical changes
Removed wrong space character in LICENSE file
author | bsw/jbe |
---|---|
date | Sat Jan 02 12:00:00 2010 +0100 (2010-01-02) |
parents | 3bfb2fcf7ab9 |
children |
rev | line source |
---|---|
bsw/jbe@0 | 1 #!/usr/bin/env lua |
bsw/jbe@0 | 2 |
bsw/jbe@0 | 3 member_count = 10000 |
bsw/jbe@0 | 4 area_count = 24 |
bsw/jbe@0 | 5 issue_count = 1000 |
bsw/jbe@0 | 6 policy_count = 3 -- do not change |
bsw/jbe@0 | 7 |
bsw/jbe@0 | 8 function write(...) |
bsw/jbe@0 | 9 io.stdout:write(...) |
bsw/jbe@0 | 10 end |
bsw/jbe@0 | 11 function writeln(...) |
bsw/jbe@0 | 12 write(...) |
bsw/jbe@0 | 13 write("\n") |
bsw/jbe@0 | 14 end |
bsw/jbe@0 | 15 |
bsw/jbe@0 | 16 math.randomseed(os.time()) |
bsw/jbe@0 | 17 |
bsw/jbe@0 | 18 writeln('BEGIN;') |
bsw/jbe@0 | 19 |
bsw/jbe@0 | 20 for i = 2, member_count do |
bsw/jbe@0 | 21 writeln('INSERT INTO "member" ("login", "name", "ident_number") VALUES (', "'testuser", i, "', 'Benutzer #", i, "', 'TEST", i, "');") |
bsw/jbe@0 | 22 end |
bsw/jbe@0 | 23 |
bsw/jbe@0 | 24 for i = 1, member_count do |
bsw/jbe@0 | 25 local is_linked = {} |
bsw/jbe@0 | 26 while math.random(4) > 1 do |
bsw/jbe@0 | 27 local k = math.random(member_count) |
bsw/jbe@0 | 28 if not is_linked[k] then |
bsw/jbe@0 | 29 local public = math.random(2) == 1 and "TRUE" or "FALSE" |
bsw/jbe@0 | 30 writeln('INSERT INTO "contact" ("member_id", "other_member_id", "public") VALUES (', i, ", ", k, ", ", public, ");") |
bsw/jbe@0 | 31 is_linked[k] = true |
bsw/jbe@0 | 32 end |
bsw/jbe@0 | 33 end |
bsw/jbe@0 | 34 end |
bsw/jbe@0 | 35 |
bsw/jbe@0 | 36 for i = 2, area_count do |
bsw/jbe@0 | 37 writeln('INSERT INTO "area" ("name") VALUES (', "'Area #", i, "');") |
bsw/jbe@0 | 38 end |
bsw/jbe@0 | 39 |
bsw/jbe@0 | 40 local memberships = {} |
bsw/jbe@0 | 41 |
bsw/jbe@0 | 42 for i = 1, area_count do |
bsw/jbe@0 | 43 memberships[i] = {} |
bsw/jbe@0 | 44 for j = 1, member_count do |
bsw/jbe@0 | 45 if math.random(4) == 1 then |
bsw/jbe@0 | 46 memberships[i][j] = true |
bsw/jbe@0 | 47 local autoreject = math.random(2) == 1 and "TRUE" or "FALSE" |
bsw/jbe@0 | 48 writeln('INSERT INTO "membership" ("member_id", "area_id", "autoreject") VALUES (', j, ", ", i, ", ", autoreject, ");") |
bsw/jbe@0 | 49 end |
bsw/jbe@0 | 50 end |
bsw/jbe@0 | 51 end |
bsw/jbe@0 | 52 |
bsw/jbe@0 | 53 do |
bsw/jbe@0 | 54 local issue_initiative_count = {} |
bsw/jbe@0 | 55 local initiative_draft_count = {} |
bsw/jbe@0 | 56 local initiative_idx = 1 |
bsw/jbe@0 | 57 local draft_count = 0 |
bsw/jbe@0 | 58 for i = 1, issue_count do |
bsw/jbe@0 | 59 local area = math.random(area_count) |
bsw/jbe@0 | 60 writeln('INSERT INTO "issue" ("area_id", "policy_id") VALUES (', area, ", ", math.random(policy_count), ");") |
bsw/jbe@0 | 61 issue_initiative_count[i] = 1 |
bsw/jbe@0 | 62 while math.random(3) > 1 do |
bsw/jbe@0 | 63 issue_initiative_count[i] = issue_initiative_count[i] + 1 |
bsw/jbe@0 | 64 end |
bsw/jbe@0 | 65 for j = 1, issue_initiative_count[i] do |
bsw/jbe@0 | 66 writeln('INSERT INTO "initiative" ("issue_id", "name") VALUES (', i, ", 'Initiative #", initiative_idx, "');") |
bsw/jbe@0 | 67 initiative_draft_count[i] = 1 |
bsw/jbe@0 | 68 while math.random(4) > 1 do |
bsw/jbe@0 | 69 initiative_draft_count[i] = initiative_draft_count[i] + 1 |
bsw/jbe@0 | 70 end |
bsw/jbe@0 | 71 local initiators = {} |
bsw/jbe@0 | 72 local is_used = {} |
bsw/jbe@0 | 73 repeat |
bsw/jbe@0 | 74 local member = math.random(member_count) |
bsw/jbe@0 | 75 if not is_used[member] then |
bsw/jbe@0 | 76 initiators[#initiators+1] = member |
bsw/jbe@0 | 77 is_used[member] = true |
bsw/jbe@0 | 78 end |
bsw/jbe@0 | 79 until math.random(2) == 1 |
bsw/jbe@0 | 80 for k = 1, initiative_draft_count[i] do |
bsw/jbe@0 | 81 draft_count = draft_count + 1 |
bsw/jbe@0 | 82 writeln('INSERT INTO "draft" ("initiative_id", "author_id", "content") VALUES (', initiative_idx, ", ", initiators[math.random(#initiators)], ", 'Lorem ipsum... (#", draft_count, ")');") |
bsw/jbe@0 | 83 end |
bsw/jbe@0 | 84 for k = 1, #initiators do |
bsw/jbe@0 | 85 local member = math.random(member_count) |
bsw/jbe@0 | 86 writeln('INSERT INTO "initiator" ("member_id", "initiative_id") VALUES (', initiators[k], ", ", initiative_idx, ");") |
bsw/jbe@0 | 87 if math.random(50) > 1 then |
bsw/jbe@0 | 88 writeln('INSERT INTO "supporter" ("member_id", "initiative_id", "draft_id") VALUES (', initiators[k], ", ", initiative_idx, ", ", draft_count - math.random(initiative_draft_count[i]) + 1, ");") |
bsw/jbe@0 | 89 end |
bsw/jbe@0 | 90 end |
bsw/jbe@0 | 91 local probability = math.random(99) + 1 |
bsw/jbe@0 | 92 for k = 1, member_count do |
bsw/jbe@0 | 93 if not is_used[k] and (memberships[area][k] and math.random(probability) <= 4 or math.random(probability) == 1) then |
bsw/jbe@0 | 94 writeln('INSERT INTO "supporter" ("member_id", "initiative_id", "draft_id") VALUES (', k, ", ", initiative_idx, ", ", draft_count - math.random(initiative_draft_count[i]) + 1, ");") |
bsw/jbe@0 | 95 end |
bsw/jbe@0 | 96 end |
bsw/jbe@0 | 97 initiative_idx = initiative_idx + 1 |
bsw/jbe@0 | 98 end |
bsw/jbe@0 | 99 end |
bsw/jbe@0 | 100 end |
bsw/jbe@0 | 101 |
bsw/jbe@0 | 102 writeln('END;') |