function block_user_role_delete

Implements hook_user_role_delete().

Removes deleted role from blocks that use it.

File

drupal/core/modules/block/block.module, line 587
Controls the visual building blocks a page is constructed with.

Code

function block_user_role_delete($role) {
  foreach (entity_load_multiple('block') as $block_id => $block) {
    $visibility = $block
      ->get('visibility');
    if (isset($visibility['roles']['roles'][$role
      ->id()])) {
      unset($visibility['roles']['roles'][$role
        ->id()]);
      $block
        ->set('visibility', $visibility);
      $block
        ->save();
    }
  }
}