webmcp
annotate framework/env/request/get_json_request_slots.lua @ 110:0c4841af07a5
String truncating by counting Unicode codepoints in format.string(...)
(grapheme cluster boundary detection not implemented)
(grapheme cluster boundary detection not implemented)
| author | jbe | 
|---|---|
| date | Sun Jan 12 03:57:47 2014 +0100 (2014-01-12) | 
| parents | 605488fbf809 | 
| children | 
| rev | line source | 
|---|---|
| jbe@1 | 1 --[[-- | 
| jbe@1 | 2 slot_idents = -- list of names of slots to be returned as JSON data | 
| jbe@1 | 3 request.get_json_request_slots() | 
| jbe@1 | 4 | 
| jbe@1 | 5 If the current request is no JSON request, this function returns nil, otherwise a list of names of all slots to be returned in JSON format. This function also throws an error, if JSON data was requested, but request.set_allowed_json_request_slots(...) has not been called. | 
| jbe@1 | 6 | 
| jbe@1 | 7 --]]-- | 
| jbe@1 | 8 | 
| jbe@1 | 9 function request.get_json_request_slots(slot_idents) | 
| bsw@24 | 10 if not cgi then return end | 
| jbe@1 | 11 local slot_idents = cgi.params["_webmcp_json_slots[]"] | 
| jbe@1 | 12 if slot_idents and not request._json_requests_allowed then | 
| jbe@1 | 13 error("JSON requests have not been allowed using request.set_allowed_json_request_slots(...).") | 
| jbe@1 | 14 end | 
| jbe@1 | 15 return slot_idents | 
| jbe@1 | 16 end |