You are here

function lightning_core_update_8005 in Lightning Core 8.4

Same name and namespace in other branches
  1. 8.5 lightning_core.install \lightning_core_update_8005()
  2. 8 lightning_core.install \lightning_core_update_8005()
  3. 8.2 lightning_core.install \lightning_core_update_8005()
  4. 8.3 lightning_core.install \lightning_core_update_8005()

Installs Lightning Roles.

File

./lightning_core.install, line 90
Contains install and update routines for Lightning.

Code

function lightning_core_update_8005() {
  $source = \Drupal::configFactory()
    ->getEditable('lightning_core.settings');
  $roles = $source
    ->get('content_roles');

  // If any content role is enabled, install Lightning Roles and migrate
  // the content role configuration from Lightning Core.
  foreach ($roles as $role) {
    if ($role['enabled']) {
      \Drupal::service('module_installer')
        ->install([
        'lightning_roles',
      ]);
      \Drupal::configFactory()
        ->getEditable('lightning_roles.settings')
        ->set('content_roles', $roles)
        ->save();
      break;
    }
  }
  $source
    ->clear('content_roles')
    ->save();
}