# HG changeset patch # User bsw # Date 1288551247 -3600 # Node ID b9c8503feff786ff84d7110afdf264eddcd68029 # Parent 3f179402127f8f4bd8a3b8862c1347bd045f6383 Highlight members been part of my delegation chain, removed unused code diff -r 3f179402127f -r b9c8503feff7 app/main/interest/show_incoming.lua --- a/app/main/interest/show_incoming.lua Sun Oct 31 19:53:15 2010 +0100 +++ b/app/main/interest/show_incoming.lua Sun Oct 31 19:54:07 2010 +0100 @@ -3,6 +3,7 @@ local members_selector = Member:new_selector() :join("delegating_interest_snapshot", nil, "delegating_interest_snapshot.member_id = member.id") + :join("issue", nil, "issue.id = delegating_interest_snapshot.issue_id") :add_where{ "delegating_interest_snapshot.issue_id = ?", issue.id } :add_where{ "delegating_interest_snapshot.event = ?", issue.latest_snapshot_event } :add_where{ "delegating_interest_snapshot.delegate_member_ids[1] = ?", member.id } diff -r 3f179402127f -r b9c8503feff7 app/main/member/_list.lua --- a/app/main/member/_list.lua Sun Oct 31 19:53:15 2010 +0100 +++ b/app/main/member/_list.lua Sun Oct 31 19:54:07 2010 +0100 @@ -4,6 +4,12 @@ local trustee = param.get("trustee", "table") local initiator = param.get("initiator", "table") +if initiative or issue then + local issue_id = issue and issue.id or initiative.issue_id + members_selector:left_join("delegating_interest_snapshot", "_member_list__delegating_interest", { "_member_list__delegating_interest.event = issue.latest_snapshot_event AND _member_list__delegating_interest.issue_id = issue.id AND _member_list__delegating_interest.member_id = ?", app.session.member_id }) + members_selector:add_field("_member_list__delegating_interest.delegate_member_ids", "delegate_member_ids") +end + ui.add_partial_param_names{ "member_list" } local filter = { @@ -52,75 +58,6 @@ attr = { class = "member_list" }, content = function() local members = members_selector:exec() - local columns = { - { - label = _"Name", - content = function(member) - ui.link{ - module = "member", - view = "show", - id = member.id, - content = function() - ui.image{ - attr = { width = 48, height = 48 }, - module = "member", - view = "avatar", - id = member.id, - extension = "jpg" - } - end - } - end - }, - { - label = _"Name", - content = function(member) - ui.link{ - module = "member", - view = "show", - id = member.id, - content = member.name - } - if member.admin then - ui.image{ - attr = { - alt = _"Administrator", - title = _"Administrator" - }, - static = "icons/16/cog.png" - } - end - -- TODO performance - local contact = Contact:by_pk(app.session.member.id, member.id) - if contact then - ui.image{ - attr = { - alt = _"Saved as contact", - title = _"Saved as contact" - }, - static = "icons/16/book_edit.png" - } - end - end - } - } - - if initiative then - columns[#columns+1] = { - label = _"Delegations", - field_attr = { style = "text-align: right;" }, - content = function(member) - if member.weight > 1 then - ui.link{ - content = member.weight, - module = "support", - view = "show_incoming", - params = { member_id = member.id, initiative_id = initiative.id } - } - end - end - } - end for i, member in ipairs(members) do execute.view{ @@ -136,6 +73,7 @@ } end + end } slot.put('
') diff -r 3f179402127f -r b9c8503feff7 app/main/member/_show_thumb.lua --- a/app/main/member/_show_thumb.lua Sun Oct 31 19:53:15 2010 +0100 +++ b/app/main/member/_show_thumb.lua Sun Oct 31 19:54:07 2010 +0100 @@ -21,6 +21,19 @@ container_class = container_class .. " not_informed" end +local in_delegation_chain = false +if member.delegate_member_ids then + for member_id in member.delegate_member_ids:gmatch("(%w+)") do + if tonumber(member_id) == member.id then + in_delegation_chain = true + end + end +end + +if in_delegation_chain then + container_class = container_class .. " in_delegation_chain" +end + ui.container{ attr = { class = container_class }, content = function() @@ -93,7 +106,10 @@ end end ui.link{ - attr = { title = _"Number of incoming delegations, follow link to see more details" }, + attr = { + class = in_delegation_chain and "in_delegation_chain" or nil, + title = _"Number of incoming delegations, follow link to see more details" + }, content = _("+ #{weight}", { weight = weight - 1 }), module = module, view = "show_incoming", diff -r 3f179402127f -r b9c8503feff7 app/main/supporter/show_incoming.lua --- a/app/main/supporter/show_incoming.lua Sun Oct 31 19:53:15 2010 +0100 +++ b/app/main/supporter/show_incoming.lua Sun Oct 31 19:54:07 2010 +0100 @@ -4,6 +4,7 @@ local members_selector = Member:new_selector() :join("delegating_interest_snapshot", nil, "delegating_interest_snapshot.member_id = member.id") + :join("issue", nil, "issue.id = delegating_interest_snapshot.issue_id") :add_where{ "delegating_interest_snapshot.issue_id = ?", issue.id } :add_where{ "delegating_interest_snapshot.event = ?", issue.latest_snapshot_event } :add_where{ "delegating_interest_snapshot.delegate_member_ids[1] = ?", member.id } diff -r 3f179402127f -r b9c8503feff7 static/style.css --- a/static/style.css Sun Oct 31 19:53:15 2010 +0100 +++ b/static/style.css Sun Oct 31 19:54:07 2010 +0100 @@ -971,6 +971,10 @@ margin-left: 0.5em; } +.member_thumb .flags .in_delegation_chain { + font-weight: bold; +} + .member .right { float: right; @@ -981,6 +985,10 @@ opacity: 0.5; } +.member_thumb.in_delegation_chain { + border-color: #f70; +} + .member_statement, .draft_content, .suggestion_content {