liquid_feedback_frontend
diff app/main/api/suggestion.lua @ 95:6a12fb7e4963
Suggestion API, draft preview, word based diff, multiple fixes
- Added suggestion API
- Initiative API: Drafts optionally delivered as rendered html fragment
- Initiative API: Fixed wrong output of revoked timestamp when using JSON
- Preview added for initiative drafts
- Improved (word based) diff added
- Improved suggestion list
- Added missing sorting of initiative in vote list
- Filter state for member page initiative lists
- Fixed wrong status output in member history
- Fixed wrongly closed div in layout
- Added suggestion API
- Initiative API: Drafts optionally delivered as rendered html fragment
- Initiative API: Fixed wrong output of revoked timestamp when using JSON
- Preview added for initiative drafts
- Improved (word based) diff added
- Improved suggestion list
- Added missing sorting of initiative in vote list
- Filter state for member page initiative lists
- Fixed wrong status output in member history
- Fixed wrongly closed div in layout
author | bsw |
---|---|
date | Mon Aug 30 21:52:19 2010 +0200 (2010-08-30) |
parents | |
children | a33abf457d29 |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/app/main/api/suggestion.lua Mon Aug 30 21:52:19 2010 +0200 1.3 @@ -0,0 +1,56 @@ 1.4 +local id = param.get("id") 1.5 +local min_id = param.get("min_id") 1.6 +local max_id = param.get("max_id") 1.7 +local initiative_id = param.get("initiative_id") 1.8 +local order = param.get("order") 1.9 +local limit = param.get("limit", atom.integer) 1.10 + 1.11 +local suggestions_selector = Suggestion:new_selector() 1.12 + 1.13 +if id then 1.14 + suggestions_selector:add_where{"suggestion.id = ?", id} 1.15 +end 1.16 + 1.17 +if min_id then 1.18 + suggestions_selector:add_where{"suggestion.id >= ?", min_id} 1.19 +end 1.20 + 1.21 +if max_id then 1.22 + suggestions_selector:add_where{"suggestion.id <= ?", max_id} 1.23 +end 1.24 + 1.25 +if order == "id_desc" then 1.26 + suggestions_selector:add_order_by("suggestion.id DESC") 1.27 +else 1.28 + suggestions_selector:add_order_by("suggestion.id") 1.29 +end 1.30 + 1.31 +if limit then 1.32 + suggestions_selector:limit(limit) 1.33 +end 1.34 + 1.35 +local api_engine = param.get("api_engine") or "xml" 1.36 + 1.37 +local fields = { 1.38 + 1.39 + { name = "id", field = "suggestion.id" }, 1.40 + { name = "initiative_id", field = "suggestion.initiative_id" }, 1.41 + { name = "name", field = "suggestion.name" }, 1.42 + { name = "description", field = "suggestion.description" }, 1.43 + { name = "minus2_unfulfilled_count", field = "suggestion.minus2_unfulfilled_count" }, 1.44 + { name = "minus2_fulfilled_count", field = "suggestion.minus2_fulfilled_count" }, 1.45 + { name = "minus1_unfulfilled_count", field = "suggestion.minus1_unfulfilled_count" }, 1.46 + { name = "minus1_fulfilled_count", field = "suggestion.minus1_fulfilled_count" }, 1.47 + { name = "plus1_unfulfilled_count", field = "suggestion.plus1_unfulfilled_count" }, 1.48 + { name = "plus1_fulfilled_count", field = "suggestion.plus1_fulfilled_count" }, 1.49 + { name = "plus2_unfulfilled_count", field = "suggestion.plus2_unfulfilled_count" }, 1.50 + { name = "plus2_fulfilled_count", field = "suggestion.plus2_fulfilled_count" }, 1.51 + 1.52 +} 1.53 + 1.54 +util.autoapi{ 1.55 + relation_name = "suggestion", 1.56 + selector = suggestions_selector, 1.57 + fields = fields, 1.58 + api_engine = api_engine 1.59 +} 1.60 \ No newline at end of file