liquid_feedback_frontend

view app/main/delegation/_list.lua @ 111:bf885faf3452

add initiator support in delegation

if a delegation is issued from the initiative view, the initiators
from that one are added to the delegation target list. this makes it easier to delegate to the author without the need to add him to the contact list.
author Daniel Poelzleithner <poelzi@poelzi.org>
date Mon Sep 20 20:32:04 2010 +0200 (2010-09-20)
parents 5c601807d397
children 19fbc5c758b5
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 if delegation.issue then
11 area = delegation.issue.area
12 else
13 area = delegation.area
14 end
15 if not area then
16 ui.field.text{ value = _"Global delegation" }
17 end
18 if area then
19 ui.link{
20 content = _"Area '#{name}'":gsub("#{name}", area.name),
21 module = "area",
22 view = "show",
23 id = area.id
24 }
25 end
26 if delegation.issue then
27 ui.link{
28 content = _"Issue ##{id}":gsub("#{id}", delegation.issue.id),
29 module = "issue",
30 view = "show",
31 id = delegation.issue.id
32 }
33 end
34 end
35 }
36 end
39 ui.paginate{
40 selector = delegations_selector,
41 content = function()
42 for i, delegation in ipairs(delegations_selector:exec()) do
43 ui.container{
44 attr = { class = "delegation_list_entry" },
45 content = function()
46 if outgoing then
47 delegation_scope(delegation)
48 else
49 execute.view{
50 module = "member",
51 view = "_show_thumb",
52 params = { member = delegation.truster }
53 }
54 end
55 ui.image{
56 attr = { class = "delegation_arrow" },
57 static = "delegation_arrow.jpg"
58 }
59 if incoming then
60 delegation_scope(delegation)
61 else
62 execute.view{
63 module = "member",
64 view = "_show_thumb",
65 params = { member = delegation.trustee }
66 }
67 end
68 end
69 }
70 end
71 slot.put("<br style='clear: left;' />")
72 end
73 }

Impressum / About Us