You are here

function lightning_media_image_modules_installed in Lightning Media 8.4

Same name and namespace in other branches
  1. 8 modules/lightning_media_image/lightning_media_image.module \lightning_media_image_modules_installed()
  2. 8.2 modules/lightning_media_image/lightning_media_image.module \lightning_media_image_modules_installed()
  3. 8.3 modules/lightning_media_image/lightning_media_image.module \lightning_media_image_modules_installed()

Implements hook_modules_installed().

1 call to lightning_media_image_modules_installed()
lightning_media_image_install in modules/lightning_media_image/lightning_media_image.install
Implements hook_install().

File

modules/lightning_media_image/lightning_media_image.module, line 57
Support for image media assets in Lightning.

Code

function lightning_media_image_modules_installed(array $modules) {

  // Don't do anything during config sync.
  if (\Drupal::isConfigSyncing()) {
    return;
  }
  if (in_array('lightning_roles', $modules)) {
    $permissions = [
      'access image_browser entity browser pages',
    ];

    // Media creators and managers can always access the image browser.
    user_role_grant_permissions('media_creator', $permissions);
    user_role_grant_permissions('media_manager', $permissions);

    // Any content creator can as well.
    \Drupal::service('lightning.content_roles')
      ->grantPermissions('creator', $permissions);
  }
  if (in_array('image_widget_crop', $modules)) {
    Config::forModule('lightning_media_image')
      ->optional()
      ->getEntity('crop_type', 'freeform')
      ->save();
  }
}