liquid_feedback_frontend

view app/main/initiative/revoke.lua @ 1858:3d1f0464a3ea

Handle missing ldap.member.allowed function
author bsw
date Tue Sep 20 17:35:29 2022 +0200 (20 months ago)
parents 0cdd70825c45
children
line source
1 local initiative = Initiative:by_id(param.get_id())
2 local initiatives = app.session.member
3 :get_reference_selector("supported_initiatives")
4 :join("issue", nil, "issue.id = initiative.issue_id")
5 :add_where("issue.closed ISNULL")
6 :add_where{ "initiative.id <> ?", initiative.id }
7 :add_order_by("issue.id")
8 :exec()
11 local member = app.session.member
12 if member then
13 initiative:load_everything_for_member_id(member.id)
14 initiative.issue:load_everything_for_member_id(member.id)
15 end
18 local tmp = { { id = -1, myname = _"Suggest no initiative" }}
19 for i, initiative in ipairs(initiatives) do
20 initiative.myname = _("Issue ##{issue_id}: #{initiative_name}", {
21 issue_id = initiative.issue.id,
22 initiative_name = initiative.name
23 })
24 tmp[#tmp+1] = initiative
25 end
27 execute.view {
28 module = "issue", view = "_head", params = {
29 issue = initiative.issue,
30 member = member
31 }
32 }
34 ui.grid{ content = function()
35 ui.cell_main{ content = function()
37 ui.container{ attr = { class = "mdl-card mdl-card__fullwidth mdl-shadow--2dp" }, content = function()
39 ui.container{ attr = { class = "mdl-card__title mdl-card--border" }, content = function()
40 ui.heading { attr = { class = "mdl-card__title-text" }, level = 2, content = _"Revoke initiative" }
41 end }
43 ui.container{ attr = { class = "mdl-card__content" }, content = function()
45 ui.form{
46 attr = { class = "wide section" },
47 module = "initiative",
48 action = "revoke",
49 id = initiative.id,
50 routing = {
51 ok = {
52 mode = "redirect",
53 module = "initiative",
54 view = "show",
55 id = initiative.id
56 }
57 },
58 content = function()
60 ui.container{ content = _"Do you want to suggest to support another initiative?" }
61 ui.container{ content = _"You may choose one of the ongoing initiatives you are currently supporting" }
63 slot.put("<br />")
65 ui.field.select{
66 name = "suggested_initiative_id",
67 foreign_records = tmp,
68 foreign_id = "id",
69 foreign_name = "myname",
70 value = param.get("suggested_initiative_id", atom.integer)
71 }
72 slot.put("<br />")
73 ui.container { content = _"Are you aware that revoking an initiative is irrevocable?" }
74 slot.put("<br />")
75 ui.container{ content = function()
76 ui.tag{ tag = "input", attr = {
77 type = "checkbox",
78 name = "are_you_sure",
79 value = "1"
80 } }
81 ui.tag { content = _"I understand, that this is not revocable" }
82 end }
85 slot.put("<br />")
86 ui.tag{
87 tag = "input",
88 attr = {
89 type = "submit",
90 class = "mdl-button mdl-js-button mdl-button--raised mdl-button--colored",
91 value = _"Revoke now"
92 },
93 content = ""
94 }
95 slot.put(" &nbsp; ")
97 ui.link{
98 attr = { class = "mdl-button mdl-js-button mdl-button--raised" },
99 content = _"Cancel",
100 module = "initiative",
101 view = "show",
102 id = initiative.id,
103 params = {
104 tab = "initiators"
105 }
106 }
108 end
109 }
111 end }
112 end }
113 end }
114 end }

Impressum / About Us