function block_user_role_delete
Same name in other branches
- 7.x modules/block/block.module \block_user_role_delete()
- 9 core/modules/block/block.module \block_user_role_delete()
- 8.9.x core/modules/block/block.module \block_user_role_delete()
- 10 core/modules/block/block.module \block_user_role_delete()
Implements hook_ENTITY_TYPE_delete() for user_role entities.
Removes deleted role from blocks that use it.
File
-
core/
modules/ block/ block.module, line 278
Code
function block_user_role_delete($role) {
foreach (Block::loadMultiple() as $block) {
/** @var \Drupal\block\BlockInterface $block */
$visibility = $block->getVisibility();
if (isset($visibility['user_role']['roles'][$role->id()])) {
unset($visibility['user_role']['roles'][$role->id()]);
$block->setVisibilityConfig('user_role', $visibility['user_role']);
$block->save();
}
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.