liquid_feedback_frontend
diff model/issue.lua @ 216:4f6e6b213fb8
Cleanup on second generation frontend code and stylesheet
author | bsw |
---|---|
date | Mon Mar 07 12:15:22 2011 +0100 (2011-03-07) |
parents | 1dab81353eb1 |
children | 73dbc9e2bfd4 |
line diff
1.1 --- a/model/issue.lua Sat Mar 05 15:34:17 2011 +0100 1.2 +++ b/model/issue.lua Mon Mar 07 12:15:22 2011 +0100 1.3 @@ -236,6 +236,42 @@ 1.4 end 1.5 } 1.6 1.7 +Issue:add_reference{ 1.8 + mode = 'mm', 1.9 + to = "Member", 1.10 + this_key = 'id', 1.11 + that_key = 'mm_ref_', 1.12 + ref = 'trusters_for_member', 1.13 + back_ref = 'issue', 1.14 + selector_generator = function(list, options) 1.15 + 1.16 + local member_id = assert(options.member_id) 1.17 + 1.18 + -- build list of issue ids 1.19 + local ids = { sep = ", " } 1.20 + for i, object in ipairs(list) do 1.21 + local id = object.id 1.22 + if id ~= nil then 1.23 + ids[#ids+1] = {"?", id} 1.24 + end 1.25 + end 1.26 + 1.27 + if #ids == 0 then 1.28 + return Delegation:new_selector():empty_list_mode() 1.29 + end 1.30 + 1.31 + local selector = Member:new_selector() 1.32 + selector:join("delegating_interest_snapshot", nil, { "delegating_interest_snapshot.delegate_member_ids[1] = ? AND delegating_interest_snapshot.member_id = member.id", member_id }) 1.33 + selector:join("issue", nil, "delegating_interest_snapshot.issue_id = issue.id AND delegating_interest_snapshot.event = issue.latest_snapshot_event") 1.34 + selector:add_where{ 'delegating_interest_snapshot.issue_id IN ($)', ids } 1.35 + selector:add_field("delegating_interest_snapshot.issue_id", "mm_ref_") 1.36 + selector:add_field("delegating_interest_snapshot.weight", "weight") 1.37 + selector:add_order_by("delegating_interest_snapshot.weight DESC, member.id") 1.38 + return selector 1.39 + 1.40 + end 1.41 +} 1.42 + 1.43 1.44 1.45 function Issue:get_state_name_for_state(value)