function _social_group_get_permissions in Open Social 8.3
Same name and namespace in other branches
- 8.9 modules/social_features/social_group/social_group.install \_social_group_get_permissions()
- 8 modules/social_features/social_group/social_group.install \_social_group_get_permissions()
- 8.2 modules/social_features/social_group/social_group.install \_social_group_get_permissions()
- 8.4 modules/social_features/social_group/social_group.install \_social_group_get_permissions()
- 8.5 modules/social_features/social_group/social_group.install \_social_group_get_permissions()
- 8.6 modules/social_features/social_group/social_group.install \_social_group_get_permissions()
- 8.7 modules/social_features/social_group/social_group.install \_social_group_get_permissions()
- 8.8 modules/social_features/social_group/social_group.install \_social_group_get_permissions()
- 10.3.x modules/social_features/social_group/social_group.install \_social_group_get_permissions()
- 10.0.x modules/social_features/social_group/social_group.install \_social_group_get_permissions()
- 10.1.x modules/social_features/social_group/social_group.install \_social_group_get_permissions()
- 10.2.x modules/social_features/social_group/social_group.install \_social_group_get_permissions()
Build the permissions.
Parameters
string $role: The role.
Return value
array Returns an array containing the permissions.
2 calls to _social_group_get_permissions()
- social_group_update_8006 in modules/
social_features/ social_group/ social_group.install - Add 'closed_group' group type and enable the permission for Authenticated.
- _social_group_set_permissions in modules/
social_features/ social_group/ social_group.install - Function to set permissions.
File
- modules/
social_features/ social_group/ social_group.install, line 89 - Install, update and uninstall functions for the social_group module.
Code
function _social_group_get_permissions($role) {
// Anonymous.
$permissions['anonymous'] = [
'access group search',
];
// Authenticated.
$permissions['authenticated'] = array_merge($permissions['anonymous'], [
'create open_group group',
'create closed_group group',
'view group stream page',
'view groups on my profile',
'view groups on other profiles',
'create public_group group',
]);
$config = \Drupal::config('entity_access_by_field.settings');
$disable_public_visibility = $config
->get('disable_public_visibility');
if ($disable_public_visibility === 0) {
$permissions['authenticated'][] = 'create public_group group';
}
// Content manager.
$permissions['contentmanager'] = array_merge($permissions['authenticated'], [
'manage all groups',
'view node.book.field_content_visibility:group content',
'view node.event.field_content_visibility:group content',
'view node.topic.field_content_visibility:group content',
'view node.page.field_content_visibility:group content',
'access group overview',
]);
// Site manager.
$permissions['sitemanager'] = array_merge($permissions['contentmanager'], [
'set social group settings',
]);
if (isset($permissions[$role])) {
return $permissions[$role];
}
return [];
}