liquid_feedback_frontend
diff app/main/api/info.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 | |
children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/app/main/api/info.lua Sun Jul 15 14:07:29 2018 +0200 1.3 @@ -0,0 +1,53 @@ 1.4 +slot.set_layout(nil, "application/json") 1.5 + 1.6 +local scope_string 1.7 + 1.8 +local scopes_list = {} 1.9 +for scope in pairs(app.scopes) do 1.10 + scopes_list[#scopes_list+1] = scope 1.11 +end 1.12 +local scopes_string = table.concat(scopes_list, " ") 1.13 + 1.14 +local result = {} 1.15 + 1.16 +local r = json.object{ 1.17 + service = "LiquidFeedback", 1.18 + core_version = db:query("SELECT * from liquid_feedback_version;")[1].string, 1.19 + api_version = config.app_version, 1.20 + client_tls_dn = request.get_header("X-SSL-DN"), 1.21 + scope = scopes_string 1.22 +} 1.23 + 1.24 +if app.scopes.identification or app.scopes.authentication then 1.25 + r.member_id = app.access_token.member_id 1.26 + if app.access_token.member.role then 1.27 + r.member_is_role = true 1.28 + end 1.29 + if app.access_token.session then 1.30 + r.real_member_id = app.access_token.session.real_member_id 1.31 + end 1.32 + if param.get("include_member", atom.boolean) then 1.33 + local member = app.access_token.member 1.34 + result.member = json.object{ 1.35 + id = member.id, 1.36 + name = member.name 1.37 + } 1.38 + if app.access_token.session and app.access_token.session.real_member then 1.39 + result.real_member = json.object{ 1.40 + id = app.access_token.session.real_member.id, 1.41 + name = app.access_token.session.real_member.name, 1.42 + } 1.43 + end 1.44 + if app.scopes.identification then 1.45 + result.member.identification = member.identification 1.46 + if app.access_token.session and app.access_token.session.real_member then 1.47 + result.real_member.identification = app.access_token.session.real_member.identification 1.48 + end 1.49 + end 1.50 + end 1.51 +end 1.52 + 1.53 +result.result = r 1.54 + 1.55 +slot.put_into("data", json.export(result)) 1.56 +slot.put_into("data", "\n")