liquid_feedback_frontend
view app/main/vote/show_incoming.lua @ 1557:09423cf96e9d
Fixed display of incoming voting weight
author | bsw |
---|---|
date | Mon Nov 09 18:00:14 2020 +0100 (2020-11-09) |
parents | 32cc544d5a5b |
children | 181cf093becd |
line source
1 local initiative = Initiative:by_id(param.get("initiative_id"))
3 local issue
5 if initiative then
6 issue = initiative.issue
7 else
8 issue = Issue:by_id(param.get("issue_id"))
9 end
11 if not issue then
12 execute.view { module = "index", view = "404" }
13 request.set_status("404 Not Found")
14 return
15 end
18 if app.session.member_id then
19 if initiative then
20 initiative:load_everything_for_member_id(app.session.member.id)
21 end
22 issue:load_everything_for_member_id(app.session.member.id)
23 end
25 local member = Member:by_id(param.get("member_id", atom.integer))
27 local members_selector = Member:new_selector()
28 :join("delegating_voter", nil, "delegating_voter.member_id = member.id")
29 :add_where{ "delegating_voter.issue_id = ?", issue.id }
30 :add_where{ "delegating_voter.delegate_member_ids[1] = ?", member.id }
31 :add_field("delegating_voter.weight", "voter_weight")
32 :add_field("delegating_voter.ownweight", "ownweight")
33 :join("issue", nil, "issue.id = delegating_voter.issue_id")
36 execute.view{
37 module = "issue", view = "_head", params = {
38 issue = issue, initiative = initiative
39 }
40 }
42 execute.view{ module = "issue", view = "_sidebar_state", params = {
43 issue = issue,
44 } }
46 execute.view {
47 module = "issue", view = "_sidebar_issue", params = {
48 issue = issue,
49 highlight_initiative_id = initiative and initiative.id or nil,
50 }
51 }
53 execute.view {
54 module = "issue", view = "_sidebar_whatcanido", params = {
55 issue = issue
56 }
57 }
59 execute.view {
60 module = "issue", view = "_sidebar_members", params = {
61 issue = issue,
62 initiative = initiative
63 }
64 }
67 ui.section( function()
69 ui.sectionHead( function()
70 ui.heading{ level = 1, content = _("Incoming delegations for '#{member}'", { member = member.name }) }
71 end)
73 execute.view{
74 module = "member",
75 view = "_list",
76 params = {
77 members_selector = members_selector,
78 trustee = member,
79 issue = issue,
80 initiative = initiative,
81 for_votes = true, no_filter = true,
83 }
84 }
86 end )