liquid_feedback_frontend

view app/main/issue/show.lua @ 1152:851d4710452f

Removed usage of deprecated function load_chunk
author bsw
date Sun Mar 22 22:31:47 2015 +0100 (2015-03-22)
parents 701a5cf6b067
children 8288027edb54
line source
1 local issue = Issue:by_id ( param.get_id () )
3 if not issue then
4 execute.view { module = "index", view = "404" }
5 request.set_status("404 Not Found")
6 return
7 end
9 local initiatives = issue.initiatives
11 if app.session.member_id then
12 issue:load_everything_for_member_id ( app.session.member_id )
13 initiatives:load_everything_for_member_id ( app.session.member_id )
14 end
16 if not app.html_title.title then
17 app.html_title.title = _("Issue ##{id}", { id = issue.id })
18 end
20 execute.view {
21 module = "issue", view = "_head",
22 params = { issue = issue, member = app.session.member }
23 }
25 execute.view{ module = "issue", view = "_sidebar_state", params = {
26 issue = issue
27 } }
29 execute.view {
30 module = "issue", view = "_sidebar_whatcanido", params = {
31 issue = issue
32 }
33 }
35 execute.view {
36 module = "issue", view = "_sidebar_members", params = {
37 issue = issue
38 }
39 }
41 ui.section( function ()
43 execute.view{
44 module = "issue", view = "_head2", params = {
45 issue = issue
46 }
47 }
49 if issue.initiatives[1].rank == 1 then
50 execute.view{ module = "initiative", view = "_sidebar_state", params = {
51 initiative = issue.initiatives[1]
52 } }
53 end
55 ui.sectionRow( function ()
56 execute.view {
57 module = "initiative", view = "_list",
58 params = {
59 issue = issue,
60 initiatives = initiatives
61 }
62 }
63 end )
65 end )
67 ui.section(function()
68 ui.sectionHead( function()
69 ui.heading { level = 1, content = _"Details" }
70 end )
71 local policy = issue.policy
72 ui.form{
73 record = issue,
74 readonly = true,
75 attr = { class = "sectionRow form" },
76 content = function()
77 if issue.snapshot then
78 ui.field.timestamp{ label = _"Last counting:", value = issue.snapshot }
79 end
80 ui.field.text{ label = _"Population", name = "population" }
81 ui.field.timestamp{ label = _"Created at", name = "created" }
82 if policy.polling then
83 ui.field.text{ label = _"Admission time", value = _"Implicitly admitted" }
84 else
85 ui.field.text{ label = _"Admission time", value = format.interval_text(issue.admission_time_text) }
86 ui.field.text{
87 label = _"Issue quorum",
88 value = format.percentage(policy.issue_quorum_num / policy.issue_quorum_den)
89 }
90 if issue.population then
91 ui.field.text{
92 label = _"Currently required",
93 value = math.ceil(issue.population * policy.issue_quorum_num / policy.issue_quorum_den)
94 }
95 end
96 end
97 if issue.accepted then
98 ui.field.timestamp{ label = _"Accepted at", name = "accepted" }
99 end
100 ui.field.text{ label = _"Discussion time", value = format.interval_text(issue.discussion_time_text) }
101 if issue.half_frozen then
102 ui.field.timestamp{ label = _"Half frozen at", name = "half_frozen" }
103 end
104 ui.field.text{ label = _"Verification time", value = format.interval_text(issue.verification_time_text) }
105 ui.field.text{
106 label = _"Initiative quorum",
107 value = format.percentage(policy.initiative_quorum_num / policy.initiative_quorum_den)
108 }
109 if issue.population then
110 ui.field.text{
111 label = _"Currently required",
112 value = math.ceil(issue.population * (issue.policy.initiative_quorum_num / issue.policy.initiative_quorum_den)),
113 }
114 end
115 if issue.fully_frozen then
116 ui.field.timestamp{ label = _"Fully frozen at", name = "fully_frozen" }
117 end
118 ui.field.text{ label = _"Voting time", value = format.interval_text(issue.voting_time_text) }
119 if issue.closed then
120 ui.field.timestamp{ label = _"Closed", name = "closed" }
121 end
122 end
123 }
125 end )

Impressum / About Us