liquid_feedback_frontend

view app/main/delegation/_list.lua @ 599:5dc5f923797b

Show link to unit in unit delegation entries in delegation list
author bsw
date Sun Jun 24 22:38:03 2012 +0200 (2012-06-24)
parents e3613831cd1e
children 701a5cf6b067
line source
1 local delegations_selector = param.get("delegations_selector", "table")
2 local outgoing = param.get("outgoing", atom.boolean)
3 local incoming = param.get("incoming", atom.boolean)
5 local function delegation_scope(delegation)
6 ui.container{
7 attr = { class = "delegation_scope" },
8 content = function()
9 local area
10 local unit
11 if delegation.issue then
12 area = delegation.issue.area
13 elseif delegation.area then
14 area = delegation.area
15 else
16 unit = delegation.unit
17 end
18 if unit then
19 ui.link{
20 content = _"Unit '#{name}'":gsub("#{name}", unit.name),
21 module = "unit",
22 view = "show",
23 id = unit.id
24 }
25 end
26 if area then
27 ui.link{
28 content = _"Area '#{name}'":gsub("#{name}", area.name),
29 module = "area",
30 view = "show",
31 id = area.id
32 }
33 end
34 if delegation.issue then
35 ui.link{
36 content = _"Issue ##{id}":gsub("#{id}", delegation.issue.id),
37 module = "issue",
38 view = "show",
39 id = delegation.issue.id
40 }
41 end
42 end
43 }
44 end
47 ui.paginate{
48 selector = delegations_selector,
49 content = function()
50 for i, delegation in ipairs(delegations_selector:exec()) do
51 ui.container{
52 attr = { class = "delegation_list_entry" },
53 content = function()
54 if outgoing then
55 delegation_scope(delegation)
56 else
57 execute.view{
58 module = "member",
59 view = "_show_thumb",
60 params = { member = delegation.truster }
61 }
62 end
63 ui.image{
64 attr = { class = "delegation_arrow" },
65 static = "delegation_arrow.jpg"
66 }
67 if incoming then
68 delegation_scope(delegation)
69 else
70 if delegation.trustee then
71 execute.view{
72 module = "member",
73 view = "_show_thumb",
74 params = { member = delegation.trustee }
75 }
76 else
77 ui.tag{ content = _"Delegation abandoned" }
78 end
79 end
80 end
81 }
82 end
83 slot.put("<br style='clear: left;' />")
84 end
85 }

Impressum / About Us