liquid_feedback_frontend

annotate model/initiator.lua @ 1062:f03fbffc1800

New layout for suggestion details view
author bsw
date Wed Jul 16 21:52:17 2014 +0200 (2014-07-16)
parents 18e8de7a2b6a
children
rev   line source
bsw/jbe@0 1 Initiator = mondelefant.new_class()
bsw/jbe@0 2 Initiator.table = 'initiator'
bsw/jbe@0 3 Initiator.primary_key = { "initiative_id", "member_id" }
bsw/jbe@0 4
bsw/jbe@0 5 Initiator:add_reference{
bsw/jbe@0 6 mode = 'm1',
bsw/jbe@0 7 to = "Initiative",
bsw/jbe@0 8 this_key = 'initiative_id',
bsw/jbe@0 9 that_key = 'id',
bsw/jbe@0 10 ref = 'initiative',
bsw/jbe@0 11 }
bsw/jbe@0 12
bsw/jbe@0 13 Initiator:add_reference{
bsw/jbe@0 14 mode = 'm1',
bsw/jbe@0 15 to = "Member",
bsw/jbe@0 16 this_key = 'member_id',
bsw/jbe@0 17 that_key = 'id',
bsw/jbe@0 18 ref = 'member',
bsw/jbe@0 19 }
bsw/jbe@0 20
bsw/jbe@0 21 function Initiator:by_pk(initiative_id, member_id)
bsw/jbe@0 22 return self:new_selector()
bsw/jbe@0 23 :add_where{ "initiative_id = ?", initiative_id }
bsw/jbe@0 24 :add_where{ "member_id = ?", member_id }
bsw/jbe@0 25 :optional_object_mode()
bsw/jbe@0 26 :exec()
bsw/jbe@0 27 end
bsw@558 28
bsw@558 29 function Initiator:selector_for_invites(member_id)
bsw@558 30 return Initiative:new_selector()
bsw@558 31 :join("issue", "_issue_state", "_issue_state.id = initiative.issue_id")
bsw@558 32 :join("initiator", nil, { "initiator.initiative_id = initiative.id AND initiator.member_id = ? AND initiator.accepted ISNULL", member_id })
bsw@558 33 :add_where("_issue_state.closed ISNULL AND _issue_state.half_frozen ISNULL")
bsw@558 34 end

Impressum / About Us