liquid_feedback_frontend
annotate app/main/api/area.lua @ 139:bc2570b97c09
fix spelling
fixed bug #330
fixed bug #330
| author | Daniel Poelzleithner <poelzi@poelzi.org> | 
|---|---|
| date | Wed Oct 06 13:52:23 2010 +0200 (2010-10-06) | 
| parents | 733f65c0c0a0 | 
| children | 
| rev | line source | 
|---|---|
| bsw@75 | 1 local id = param.get("id") | 
| bsw@75 | 2 local min_id = param.get("min_id") | 
| bsw@75 | 3 local max_id = param.get("max_id") | 
| bsw@75 | 4 local order = param.get("order") | 
| bsw@75 | 5 local limit = param.get("limit", atom.integer) | 
| bsw@75 | 6 | 
| bsw@75 | 7 local areas_selector = Area:new_selector() | 
| bsw@75 | 8 | 
| bsw@75 | 9 if id then | 
| bsw@75 | 10 areas_selector:add_where{"area.id = ?", id} | 
| bsw@75 | 11 end | 
| bsw@75 | 12 | 
| bsw@75 | 13 if min_id then | 
| bsw@75 | 14 areas_selector:add_where{"area.id >= ?", min_id} | 
| bsw@75 | 15 end | 
| bsw@75 | 16 | 
| bsw@75 | 17 if max_id then | 
| bsw@75 | 18 areas_selector:add_where{"area.id <= ?", max_id} | 
| bsw@75 | 19 end | 
| bsw@75 | 20 | 
| bsw@75 | 21 if order == "name" then | 
| bsw@75 | 22 areas_selector:add_order_by("area.name") | 
| bsw@75 | 23 end | 
| bsw@75 | 24 | 
| bsw@75 | 25 if order == "member_weight" then | 
| bsw@75 | 26 areas_selector:add_order_by("area.member_weight DESC") | 
| bsw@75 | 27 end | 
| bsw@75 | 28 | 
| bsw@75 | 29 areas_selector:add_order_by("area.id") | 
| bsw@75 | 30 | 
| bsw@75 | 31 if limit then | 
| bsw@75 | 32 initiatives_selector:limit(limit) | 
| bsw@75 | 33 end | 
| bsw@75 | 34 | 
| bsw@75 | 35 local api_engine = param.get("api_engine") or "xml" | 
| bsw@75 | 36 | 
| bsw@75 | 37 local fields = { | 
| bsw@75 | 38 | 
| bsw@75 | 39 { name = "id", field = "area.id" }, | 
| bsw@75 | 40 { name = "name", field = "area.name" }, | 
| bsw@75 | 41 { name = "description", field = "area.description" }, | 
| bsw@75 | 42 { name = "direct_member_count", field = "area.direct_member_count" }, | 
| bsw@75 | 43 { name = "member_weight", field = "area.member_weight" }, | 
| bsw@75 | 44 { name = "autoreject_weight", field = "area.autoreject_weight" }, | 
| bsw@75 | 45 { name = "active", field = "area.active" }, | 
| bsw@75 | 46 | 
| bsw@75 | 47 } | 
| bsw@75 | 48 | 
| bsw@75 | 49 util.autoapi{ | 
| bsw@75 | 50 relation_name = "area", | 
| bsw@75 | 51 selector = areas_selector, | 
| bsw@75 | 52 fields = fields, | 
| bsw@75 | 53 api_engine = api_engine | 
| bsw@75 | 54 } |