liquid_feedback_frontend
diff model/member_application.lua @ 1309:32cc544d5a5b
Cumulative patch for upcoming frontend version 4
| author | bsw/jbe |
|---|---|
| date | Sun Jul 15 14:07:29 2018 +0200 (2018-07-15) |
| parents | 02dea1bbf968 |
| children |
line diff
1.1 --- a/model/member_application.lua Thu Jun 23 03:30:57 2016 +0200 1.2 +++ b/model/member_application.lua Sun Jul 15 14:07:29 2018 +0200 1.3 @@ -1,2 +1,66 @@ 1.4 MemberApplication = mondelefant.new_class() 1.5 MemberApplication.table = 'member_application' 1.6 + 1.7 +MemberApplication:add_reference{ 1.8 + mode = 'm1', 1.9 + to = "SystemApplication", 1.10 + this_key = 'system_application_id', 1.11 + that_key = 'id', 1.12 + ref = 'system_application' 1.13 +} 1.14 + 1.15 +function MemberApplication:get_selector_by_member_id_and_system_application_id(member_id, system_application_id) 1.16 + local selector = self:new_selector() 1.17 + selector:add_where{ "member_id = ?", member_id } 1.18 + selector:add_where{ "system_application_id = ?", system_application_id } 1.19 + selector:optional_object_mode() 1.20 + return selector 1.21 +end 1.22 + 1.23 +function MemberApplication:by_member_id_and_system_application_id(member_id, system_application_id) 1.24 + local member_application = self:get_selector_by_member_id_and_system_application_id(member_id, system_application_id) 1.25 + :optional_object_mode() 1.26 + :exec() 1.27 + return member_application 1.28 +end 1.29 + 1.30 +function MemberApplication:get_selector_by_member_id_and_domain(member_id, domain) 1.31 + local selector = self:new_selector() 1.32 + selector:add_where{ "member_id = ?", member_id } 1.33 + selector:add_where{ "domain = ?", domain } 1.34 + selector:optional_object_mode() 1.35 + return selector 1.36 +end 1.37 + 1.38 +function MemberApplication:by_member_id_and_domain(member_id, domain) 1.39 + local member_application = self:get_selector_by_member_id_and_domain(member_id, domain) 1.40 + :optional_object_mode() 1.41 + :exec() 1.42 + return member_application 1.43 +end 1.44 + 1.45 +function MemberApplication:by_member_id(member_id) 1.46 + local member_applications = self:new_selector() 1.47 + :add_where{ "member_id = ?", member_id } 1.48 + :exec() 1.49 + return member_applications 1.50 +end 1.51 + 1.52 +function MemberApplication:by_member_id_with_domain(member_id) 1.53 + local member_applications = self:new_selector() 1.54 + :add_where{ "member_id = ?", member_id } 1.55 + :add_where( "domain NOTNULL" ) 1.56 + :exec() 1.57 + return member_applications 1.58 +end 1.59 + 1.60 +function MemberApplication:by_member_id_and_origin(member_id, origin) 1.61 + local domain = string.match(string.lower(origin), "^https://(.+)") 1.62 + if not domain then 1.63 + return 1.64 + end 1.65 + local member_application = self:get_selector_by_member_id_and_domain(member_id, domain) 1.66 + :optional_object_mode() 1.67 + :exec() 1.68 + return member_application 1.69 +end