liquid_feedback_frontend

view app/main/initiative/history.lua @ 1309:32cc544d5a5b

Cumulative patch for upcoming frontend version 4
author bsw/jbe
date Sun Jul 15 14:07:29 2018 +0200 (2018-07-15)
parents fede09736f2b
children 3ab878ba277e
line source
1 local initiative = Initiative:by_id(param.get_id())
3 initiative:load_everything_for_member_id(app.session.member_id)
4 initiative.issue:load_everything_for_member_id(app.session.member_id)
7 ui.grid{ content = function()
9 ui.cell_main{ content = function()
10 ui.container{ attr = { class = "mdl-card mdl-card__fullwidth mdl-shadow--2dp" }, content = function()
12 ui.container{ attr = { class = "mdl-card__title mdl-card--border" }, content = function ()
13 ui.heading {
14 attr = { class = "mdl-card__title-text" },
15 content = function()
16 ui.link{
17 module = "initiative", view = "show", id = initiative.id,
18 content = initiative.display_name
19 }
20 end
21 }
22 ui.container { content = _"Draft history" }
23 end }
25 ui.container {
26 attr = { class = "mdl-card__content" },
27 content = function()
28 ui.form{
29 method = "get",
30 module = "draft",
31 view = "diff",
32 attr = { class = "section" },
33 content = function()
34 ui.field.hidden{ name = "initiative_id", value = initiative.id }
36 ui.sectionRow( function()
38 local columns = {
39 {
40 label = _"draft ID",
41 content = function(record)
42 ui.tag { content = record.id }
43 end
44 },
45 {
46 label = _"published at",
47 content = function(record)
48 ui.link{
49 attr = { class = "action" },
50 module = "draft", view = "show", id = record.id,
51 text = format.timestamp(record.created)
52 }
53 end
54 },
55 {
56 label = _"compare",
57 content = function(record)
58 slot.put('<label class="mdl-radio mdl-js-radio mdl-js-ripple-effect" for="old_draft_id_' .. record.id .. '"><input type="radio" class="mdl-radio__button" id="old_draft_id_' .. record.id .. '" name="old_draft_id" value="' .. tostring(record.id) .. '"></label>')
59 slot.put('<label class="mdl-radio mdl-js-radio mdl-js-ripple-effect" for="new_draft_id_' .. record.id .. '"><input type="radio" class="mdl-radio__button" id="new_draft_id_' .. record.id .. '" name="new_draft_id" value="' .. tostring(record.id) .. '"></label>')
60 --lot.put('<input type="radio" name="new_draft_id" value="' .. tostring(record.id) .. '">')
61 end
62 }
63 }
65 if app.session:has_access("authors_pseudonymous") then
66 columns[#columns+1] = {
67 label = _"author",
68 content = function(record)
69 if record.author then
70 return util.micro_avatar ( record.author )
71 end
72 end
73 }
74 end
76 if config.render_external_reference and config.render_external_reference.draft then
77 columns[#columns+1] = {
78 label = _"external reference",
79 content = function(draft)
80 config.render_external_reference.draft(draft, function (callback)
81 callback()
82 end)
83 end
84 }
85 end
87 ui.list{
88 records = initiative.drafts,
89 columns = columns
90 }
92 slot.put("<br />")
93 ui.container { attr = { class = "actions" }, content = function()
94 ui.tag{
95 tag = "input",
96 attr = {
97 type = "submit",
98 class = "mdl-button mdl-js-button mdl-button--raised mdl-button--colored",
99 value = _"compare revisions"
100 },
101 content = ""
102 }
103 end }
104 end )
105 end
106 }
107 end
108 }
109 end }
110 end }
112 ui.cell_sidebar{ content = function()
113 execute.view{ module = "issue", view = "_sidebar", params = {
114 initiative = initiative,
115 issue = initiative.issue
116 } }
118 execute.view {
119 module = "issue", view = "_sidebar_whatcanido",
120 params = { initiative = initiative }
121 }
123 execute.view {
124 module = "issue", view = "_sidebar_members", params = {
125 issue = initiative.issue, initiative = initiative
126 }
127 }
128 end }
130 end }

Impressum / About Us