Changeset View
Changeset View
Standalone View
Standalone View
lib/app/base-chips/access-strategy-types/roles.js
const get_matching_roles_counter = async function(app, context, allowed_roles) { | const get_matching_roles_counter = async function(app, context, allowed_roles) { | ||||
const user_id = context.user_id; | const user_id = context.user_id; | ||||
const user_roles = (await app.run_action( | const user_roles = (await app.run_action( | ||||
new app.Sealious.SuperContext(context), | new app.Sealious.SuperContext(context), | ||||
["collections", "user-roles"], | ["collections", "user-roles"], | ||||
"show", | "show", | ||||
{ filter: { user: user_id } } | { filter: { user: user_id } } | ||||
)).items.map(role_resource => role_resource.body.role); | )).items.map(role_resource => role_resource.role); | ||||
return allowed_roles.filter(allowed_role => | return allowed_roles.filter(allowed_role => | ||||
user_roles.includes(allowed_role) | user_roles.includes(allowed_role) | ||||
).length; | ).length; | ||||
}; | }; | ||||
module.exports = app => ({ | module.exports = app => ({ | ||||
name: "roles", | name: "roles", | ||||
Show All 36 Lines |