bsw/jbe@1309: ui.titleMember(_"Connected applications") bsw/jbe@1309: bsw/jbe@1309: ui.grid{ content = function() bsw/jbe@1309: ui.cell_main{ content = function() bsw/jbe@1309: bsw/jbe@1309: ui.container{ attr = { class = "mdl-card mdl-card__fullwidth mdl-shadow--2dp" }, content = function() bsw/jbe@1309: ui.container{ attr = { class = "mdl-card__title mdl-card--border" }, content = function() bsw/jbe@1309: ui.heading { attr = { class = "mdl-card__title-text" }, level = 2, content = _"Connected applications" } bsw/jbe@1309: end } bsw/jbe@1309: bsw/jbe@1309: local applications = MemberApplication:by_member_id(app.session.member_id) bsw/jbe@1309: bsw/jbe@1309: for i, application in ipairs(applications) do bsw/jbe@1309: ui.container{ attr = { class = "mdl-card__content mdl-card--border" }, content = function() bsw/jbe@1309: if application.system_application_id then bsw/jbe@1309: ui.heading{ level = 2, content = application.system_application.name } bsw/jbe@1309: else bsw/jbe@1309: ui.heading{ level = 2, content = application.domain } bsw/jbe@1309: end bsw/jbe@1309: local scopes = {} bsw/jbe@1309: for scope in string.gmatch(application.scope, "[^ ]+") do bsw/jbe@1309: scopes[#scopes+1] = util.scope_name(scope) bsw/jbe@1309: end bsw/jbe@1309: local scopes_string = table.concat(scopes, ", ") bsw/jbe@1309: ui.container{ content = scopes_string } bsw/jbe@1309: ui.link{ content = _"Remove application", module = "member", action = "remove_application", id = application.id } bsw/jbe@1309: end } bsw/jbe@1309: end bsw/jbe@1309: bsw/jbe@1309: end } bsw/jbe@1309: end } bsw/jbe@1309: bsw/jbe@1309: ui.cell_sidebar{ content = function() bsw/jbe@1309: execute.view { bsw/jbe@1309: module = "member", view = "_sidebar_whatcanido", params = { bsw/jbe@1309: member = app.session.member bsw/jbe@1309: } bsw/jbe@1309: } bsw/jbe@1309: end } bsw/jbe@1309: bsw/jbe@1309: end }