liquid_feedback_frontend
diff app/main/lf2/_area.lua @ 211:4993b71b383f
First checkin of lf2 (frontend second generation) prototype
| author | bsw |
|---|---|
| date | Wed Mar 02 20:06:26 2011 +0100 (2011-03-02) |
| parents | |
| children | 3e4ad069847a |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/app/main/lf2/_area.lua Wed Mar 02 20:06:26 2011 +0100 1.3 @@ -0,0 +1,75 @@ 1.4 +local area = param.get("area", "table") 1.5 + 1.6 +local membership = Membership:by_pk(area.id, app.session.member_id) 1.7 + 1.8 +local trustees = Member:new_selector() 1.9 + :add_field("delegation_chain.*") 1.10 + :join("delegation_chain(" .. app.session.member_id .. ", " .. area.id .. ", NULL)", "delegation_chain", "member.id = delegation_chain.member_id") 1.11 + :add_order_by("index") 1.12 + :exec() 1.13 + 1.14 +ui.box{ class = "area", content = function() 1.15 + 1.16 + ui.box_row{ class = "head", content = function() 1.17 + ui.box_col{ class = "left name", content = area.name } 1.18 + ui.box_col{ class = "right", content = _("#{direct_count}+#{delegated_count} Mitglieder", { 1.19 + direct_count = area.direct_member_count, 1.20 + delegated_count = area.member_weight - area.direct_member_count 1.21 + } ) } 1.22 + end } 1.23 + 1.24 + if area.description and #area.description > 0 then 1.25 + ui.box_row{ class = "description", content = function() ui.box_col{ content = area.description } end } 1.26 + end 1.27 + 1.28 + ui.box_row{ class = "member_count", content = function() 1.29 + end } 1.30 + 1.31 + ui.box_row{ content = function() 1.32 + ui.box_col{ class = "left", content = function() 1.33 + execute.view{ module = "lf2", view = "_avatars", params = { members = trustees, arrows = true, size = "small" } } 1.34 + end } 1.35 + ui.box_col{ class = "right", content = function() 1.36 + ui.tag{ content = _"[Change] or [revoke] area delegation [prefix]" } 1.37 + ui.link{ text = _"[Change] or [revoke] area delegation [change]" } 1.38 + ui.tag{ content = _"[Change] or [revoke] area delegation [midpart]" } 1.39 + ui.link{ text = _"[Change] or [revoke] area delegation [revoke]" } 1.40 + ui.tag{ content = _"[Change] or [revoke] area delegation [suffix]" } 1.41 + end } 1.42 + end } 1.43 + 1.44 + ui.box_row{ content = function() 1.45 + ui.box_col{ class = "left", content = function() 1.46 + if membership then 1.47 + ui.image{ static = "lf2/icon_star.png" } 1.48 + slot.put(" ", _"You are member of this area") 1.49 + else 1.50 + ui.link{ 1.51 + module = "membership", action = "update", params = { area_id = area.id }, 1.52 + routing = { default = { 1.53 + mode = "redirect", module = "lf2", view = "area", id = area.id 1.54 + } }, 1.55 + text = _"Become a member of this area" 1.56 + } 1.57 + end 1.58 + end } 1.59 + ui.box_col{ class = "right", content = function() 1.60 + if membership then 1.61 + ui.link{ 1.62 + module = "membership", action = "update", params = { area_id = area.id, delete = true }, 1.63 + routing = { default = { 1.64 + mode = "redirect", module = "lf2", view = "area", id = area.id 1.65 + } }, 1.66 + text = _"Give up membership" 1.67 + } 1.68 + end 1.69 + if not trustees then 1.70 + if membership then 1.71 + slot.put(" · ") 1.72 + end 1.73 + ui.link{ text = _"Delegate area...", module = "lf2", view = "delegation" } 1.74 + end 1.75 + end } 1.76 + end } 1.77 + 1.78 +end } 1.79 \ No newline at end of file