liquid_feedback_frontend

annotate model/delegation.lua @ 2:5c601807d397

Version alpha3

Dark green part of issue supporter bargraph represents all satisfied supporters, regardless of having seen the latest draft

Wiki formatting for drafts

Showing differences between two drafts of the same initiative

Display of outgoing delegation chains

Many other improvements
author bsw
date Mon Nov 23 12:00:00 2009 +0100 (2009-11-23)
parents 3bfb2fcf7ab9
children 73dbc9e2bfd4 e3613831cd1e
rev   line source
bsw/jbe@0 1 Delegation = mondelefant.new_class()
bsw/jbe@0 2 Delegation.table = 'delegation'
bsw/jbe@0 3
bsw/jbe@0 4 Delegation:add_reference{
bsw/jbe@0 5 mode = 'm1',
bsw/jbe@0 6 to = "Member",
bsw/jbe@0 7 this_key = 'truster_id',
bsw/jbe@0 8 that_key = 'id',
bsw/jbe@0 9 ref = 'truster',
bsw/jbe@0 10 }
bsw/jbe@0 11
bsw/jbe@0 12 Delegation:add_reference{
bsw/jbe@0 13 mode = 'm1',
bsw/jbe@0 14 to = "Member",
bsw/jbe@0 15 this_key = 'trustee_id',
bsw/jbe@0 16 that_key = 'id',
bsw/jbe@0 17 ref = 'trustee',
bsw/jbe@0 18 }
bsw/jbe@0 19
bsw/jbe@0 20 Delegation:add_reference{
bsw/jbe@0 21 mode = 'm1',
bsw/jbe@0 22 to = "Area",
bsw/jbe@0 23 this_key = 'area_id',
bsw/jbe@0 24 that_key = 'id',
bsw/jbe@0 25 ref = 'area',
bsw/jbe@0 26 }
bsw/jbe@0 27
bsw/jbe@0 28 Delegation:add_reference{
bsw/jbe@0 29 mode = 'm1',
bsw/jbe@0 30 to = "Issue",
bsw/jbe@0 31 this_key = 'issue_id',
bsw/jbe@0 32 that_key = 'id',
bsw/jbe@0 33 ref = 'issue',
bsw/jbe@0 34 }
bsw/jbe@0 35
bsw/jbe@0 36 function Delegation:by_pk(truster_id, area_id, issue_id)
bsw/jbe@0 37 local selector = self:new_selector():optional_object_mode()
bsw/jbe@0 38 selector:add_where{ "truster_id = ?", truster_id }
bsw/jbe@0 39 if area_id then
bsw/jbe@0 40 selector:add_where{ "area_id = ?", area_id }
bsw/jbe@0 41 else
bsw/jbe@0 42 selector:add_where("area_id ISNULL")
bsw/jbe@0 43 end
bsw/jbe@0 44 if issue_id then
bsw/jbe@0 45 selector:add_where{ "issue_id = ? ", issue_id }
bsw/jbe@0 46 else
bsw/jbe@0 47 selector:add_where("issue_id ISNULL ")
bsw/jbe@0 48 end
bsw/jbe@0 49 return selector:exec()
bsw/jbe@0 50 end

Impressum / About Us