liquid_feedback_frontend

view app/main/api/suggestion.lua @ 143:a33abf457d29

add initiative_id selector in suggestion api

fixes bug #301
author Daniel Poelzleithner <poelzi@poelzi.org>
date Wed Oct 06 16:35:33 2010 +0200 (2010-10-06)
parents 6a12fb7e4963
children ff6162022615
line source
1 local id = param.get("id")
2 local min_id = param.get("min_id")
3 local max_id = param.get("max_id")
4 local initiative_id = param.get("initiative_id")
5 local order = param.get("order")
6 local limit = param.get("limit", atom.integer)
8 local suggestions_selector = Suggestion:new_selector()
10 if id then
11 suggestions_selector:add_where{"suggestion.id = ?", id}
12 end
14 if min_id then
15 suggestions_selector:add_where{"suggestion.id >= ?", min_id}
16 end
18 if max_id then
19 suggestions_selector:add_where{"suggestion.id <= ?", max_id}
20 end
22 if initiative_id then
23 suggestions_selector:add_where{"suggestion.initiative_id = ?", initiative_id}
24 end
26 if order == "id_desc" then
27 suggestions_selector:add_order_by("suggestion.id DESC")
28 else
29 suggestions_selector:add_order_by("suggestion.id")
30 end
32 if limit then
33 suggestions_selector:limit(limit)
34 end
36 local api_engine = param.get("api_engine") or "xml"
38 local fields = {
40 { name = "id", field = "suggestion.id" },
41 { name = "initiative_id", field = "suggestion.initiative_id" },
42 { name = "name", field = "suggestion.name" },
43 { name = "description", field = "suggestion.description" },
44 { name = "minus2_unfulfilled_count", field = "suggestion.minus2_unfulfilled_count" },
45 { name = "minus2_fulfilled_count", field = "suggestion.minus2_fulfilled_count" },
46 { name = "minus1_unfulfilled_count", field = "suggestion.minus1_unfulfilled_count" },
47 { name = "minus1_fulfilled_count", field = "suggestion.minus1_fulfilled_count" },
48 { name = "plus1_unfulfilled_count", field = "suggestion.plus1_unfulfilled_count" },
49 { name = "plus1_fulfilled_count", field = "suggestion.plus1_fulfilled_count" },
50 { name = "plus2_unfulfilled_count", field = "suggestion.plus2_unfulfilled_count" },
51 { name = "plus2_fulfilled_count", field = "suggestion.plus2_fulfilled_count" },
53 }
55 util.autoapi{
56 relation_name = "suggestion",
57 selector = suggestions_selector,
58 fields = fields,
59 api_engine = api_engine
60 }

Impressum / About Us